home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 112 / EnigmaAmiga112CD.iso / dalla rivista / news / documentazione_flyer / flyer.doc next >
Text File  |  1999-05-18  |  98KB  |  4,191 lines

  1. TABLE OF CONTENTS
  2.  
  3. flyer.library/AbortAction
  4. flyer.library/AddAudEKey
  5. flyer.library/AddAudEnv
  6. flyer.library/AddClipCut
  7. flyer.library/AddSeqClip
  8. flyer.library/AppendFields
  9. flyer.library/BeginFindField
  10. flyer.library/ChangeAudio
  11. flyer.library/CheckAction
  12. flyer.library/CloseField
  13. flyer.library/CopyData
  14. flyer.library/CPUDMA
  15. flyer.library/Defaults
  16. flyer.library/DoFindField
  17. flyer.library/EasyOpenWriteField
  18. flyer.library/EndClipCutList
  19. flyer.library/EndFindField
  20. flyer.library/EndHeadList
  21. flyer.library/EndSequence
  22. flyer.library/EndSequenceNew
  23. flyer.library/Error2String
  24. flyer.library/FindDrives
  25. flyer.library/FindFieldAudio
  26. flyer.library/Firmware
  27. flyer.library/FlyerAudioCtrl
  28. flyer.library/FlyerCopyClip
  29. flyer.library/FlyerCopyClipNew
  30. flyer.library/FlyerCreateDir
  31. flyer.library/FlyerDeFrag
  32. flyer.library/FlyerDeFragNew
  33. flyer.library/FlyerDelete
  34. flyer.library/FlyerDirList
  35. flyer.library/FlyerDriveCheck
  36. flyer.library/FlyerDriveInfo
  37. flyer.library/FlyerFileClose
  38. flyer.library/FlyerFileExtend
  39. flyer.library/FlyerFileHSRead
  40. flyer.library/FlyerFileHSWrite
  41. flyer.library/FlyerFileOpen
  42. flyer.library/FlyerFileRead
  43. flyer.library/FlyerFileSeek
  44. flyer.library/FlyerFileWrite
  45. flyer.library/FlyerFormat
  46. flyer.library/FlyerInputSel
  47. flyer.library/FlyerNewFileRead
  48. flyer.library/FlyerNewFileWrite
  49. flyer.library/FlyerPlay
  50. flyer.library/FlyerQuit
  51. flyer.library/FlyerReadCalib
  52. flyer.library/FlyerReadLine
  53. flyer.library/FlyerRecord
  54. flyer.library/FlyerRename
  55. flyer.library/FlyerRenameDisk
  56. flyer.library/FlyerRunning
  57. flyer.library/FlyerSetBits
  58. flyer.library/FlyerSetComment
  59. flyer.library/FlyerSetDate
  60. flyer.library/FlyerStripAudio
  61. flyer.library/FlyerTermination
  62. flyer.library/FlyerWriteCalib
  63. flyer.library/FlyerWriteLine
  64. flyer.library/GetClipInfo
  65. flyer.library/GetFieldClock
  66. flyer.library/GetFrameHeader
  67. flyer.library/GetSMPTE
  68. flyer.library/InitFlyerForce
  69. flyer.library/InitFlyers
  70. flyer.library/Inquiry
  71. flyer.library/LocateField
  72. flyer.library/LockFlyVolList
  73. flyer.library/MakeClipHead
  74. flyer.library/MakeFlyerFile
  75. flyer.library/ModeSelect
  76. flyer.library/ModeSense
  77. flyer.library/NewSequence
  78. flyer.library/OpenReadField
  79. flyer.library/OpenWriteField
  80. flyer.library/PauseAction
  81. flyer.library/PlayMode
  82. flyer.library/PlaySequence
  83. flyer.library/PutFrameHeader
  84. flyer.library/Read10
  85. flyer.library/ReadSize
  86. flyer.library/ReadTest
  87. flyer.library/RecordMode
  88. flyer.library/ReqSense
  89. flyer.library/ResetFlyer
  90. flyer.library/SCSIinit
  91. flyer.library/SCSIreset
  92. flyer.library/SCSIseek
  93. flyer.library/SetFillColor
  94. flyer.library/SetFlooby
  95. flyer.library/SetFlyerTime
  96. flyer.library/SetSerDevice
  97. flyer.library/SkipLines
  98. flyer.library/StartClipCutList
  99. flyer.library/StartHeadList
  100. flyer.library/StillMode
  101. flyer.library/TBCcontrol
  102. flyer.library/ToasterMux
  103. flyer.library/UnLockFlyVolList
  104. flyer.library/VideoCompressModes
  105. flyer.library/VideoParams
  106. flyer.library/VoidAllHeads
  107. flyer.library/VoidCardHeads
  108. flyer.library/VoidClipHead
  109. flyer.library/WaitAction
  110. flyer.library/Write10
  111. flyer.library/WriteTest
  112. flyer.library/AbortAction                           flyer.library/AbortAction
  113.  
  114.    NAME
  115.     AbortAction - abort a previously started action
  116.  
  117.    SYNOPSIS
  118.     error = AbortAction(action)
  119.     D0                  A0
  120.  
  121.     ULONG AbortAction(struct ClipAction *);
  122.  
  123.    FUNCTION
  124.     Attempts to abort an action that was previously initiated.  Does
  125.     nothing if it has already finished.
  126.  
  127.     If ClipAction ptr is NULL, aborts all pending operations to all
  128.     Flyers.
  129.  
  130.    INPUTS
  131.     action - ptr to ClipAction structure used to start the action
  132.         (or NULL to abort everything)
  133.  
  134.    RESULT
  135.  
  136.    EXAMPLE
  137.  
  138.    NOTES
  139.  
  140.    BUGS
  141.  
  142.    SEE ALSO
  143.  
  144. flyer.library/AddAudEKey                             flyer.library/AddAudEKey
  145.  
  146.    NAME
  147.     AddAudEKey - Adds an Audio Envelop key
  148.  
  149.    SYNOPSIS
  150.     err=AddAudEKey(board,AUDEKEY)
  151.     D0              D0   A0
  152.  
  153.     ULONG AddAudEKey(UBYTE,APTR);
  154.  
  155.    INPUTS
  156.  
  157.    RESULT
  158.  
  159.    EXAMPLE
  160.  
  161.    NOTES
  162.     Now should only be called by AddAudEnv    
  163.     New for 4.2
  164.     
  165.    BUGS
  166.  
  167.    SEE ALSO
  168.  
  169. flyer.library/AddAudEnv                               flyer.library/AddAudEnv
  170.  
  171.    NAME
  172.     AddAudEnv - Adds an Audio Envelop to a clip 
  173.  
  174.    SYNOPSIS
  175.     err=AddAudEnv(board,AudioEnv)
  176.     D0              D0   A0
  177.  
  178.     ULONG AddAudEnv(UBYTE,APTR);
  179.  
  180.    INPUTS
  181.  
  182.    RESULT
  183.  
  184.    EXAMPLE
  185.  
  186.    NOTES
  187.     Must be sent right after clip is added it sequence    
  188.     New for 4.3
  189.  
  190.    BUGS
  191.      Does not handle chan diff in vol or pan yet.
  192.  
  193.    SEE ALSO
  194.             AddAudEKey
  195. flyer.library/AddClipCut                             flyer.library/AddClipCut
  196.  
  197.    NAME
  198.     AddClipCut -- Add an entry to the ClipCut list
  199.  
  200.    SYNOPSIS
  201.     error = AddClipCut(subclip)
  202.     D0                 A0
  203.  
  204.     ULONG AddClipCut(struct ClipAction *);
  205.  
  206.    FUNCTION
  207.     Add another sub-clip definition to the currently open ClipCut list.
  208.     The fields in this structure give specifics for this sub-clip,
  209.     including:
  210.  
  211.        Volume:Path/name for sub-clip
  212.        Beginning and ending field numbers
  213.        Contents (video and/or audio)
  214.  
  215.     See StartClipCutList for a full description of this processing
  216.     mechanism.
  217.  
  218.    INPUTS
  219.     subclip - a ClipAction structure specifying the new sub-clip.  The
  220.               same structure may be used for each call, as all needed
  221.               information is copied out of it before this function
  222.               returns.
  223.  
  224.    RESULT
  225.  
  226.    EXAMPLE
  227.  
  228.    NOTES
  229.     The ClipAction fields AudStartField/VidStartField and
  230.     AudFieldCount/VidFieldCount must each match, regardless of the type
  231.     of clip specified to make.
  232.  
  233.    BUGS
  234.  
  235.    SEE ALSO
  236.     StartClipCutList
  237.     EndClipCutList
  238.  
  239. flyer.library/AddSeqClip                             flyer.library/AddSeqClip
  240.  
  241.    NAME
  242.     AddSeqClip - Add an entry to the Flyer sequence
  243.  
  244.    SYNOPSIS
  245.     error = AddSeqClip(clip)
  246.     D0                 A0
  247.  
  248.     ULONG AddSeqClip(struct ClipAction *);
  249.  
  250.    FUNCTION
  251.     Add another event for the Flyer's internal sequencer to play.
  252.  
  253.     Any combination of Video and Audio in/out points is supported
  254.     properly, including split audio.
  255.  
  256.     See NewSequence for more info about the Flyer's sequencer.
  257.  
  258.    INPUTS
  259.     clip - a ClipAction structure specifying the event.  The same
  260.            structure may be used for each call, as all needed information
  261.            is copied out of it before this function returns.
  262.  
  263.    RESULT
  264.  
  265.    EXAMPLE
  266.  
  267.    NOTES
  268.  
  269.    BUGS
  270.  
  271.    SEE ALSO
  272.     EndSequence
  273.     EndSequenceNew
  274.     NewSequence
  275.     PlaySequence
  276.  
  277. flyer.library/AppendFields                         flyer.library/AppendFields
  278.  
  279.    NAME
  280.     AppendFields - Capture live video field(s) and append to Flyer clip
  281.  
  282.    SYNOPSIS
  283.     error = AppendFields(clip)
  284.     D0                   A0
  285.  
  286.     ULONG AppendFields(struct ClipAction *);
  287.  
  288.    FUNCTION
  289.     Captures live video field(s) and appends them to the specified Flyer
  290.     video clip.  Creates a new clip if it does not already exist.
  291.     Grabs correct field(s) from the captured color frames so that any
  292.     number of fields may be grabbed without concern for color phase.
  293.  
  294.     Number of fields to record is specified in clip->ca_VidFieldCount.
  295.  
  296.     This function always captures a new color frame.  Also, if the number
  297.     of fields specified spans more than one color frame, a new one is
  298.     captured for every new field 1 needed.  For example, if the current
  299.     clip needs a field 4 to be appended next and this function is called
  300.     with fields=3, a color frame is captured, and field 4 is appended.
  301.     Then a NEW color frame is captured and fields 1 and 2 are appended.
  302.     If this function is then called again with fields=3, a NEW color
  303.     frame is captured and fields 3 and 4 are appended.
  304.  
  305.    INPUTS
  306.     clip - a ClipAction structure specifying the clip.
  307.  
  308.    RESULT
  309.  
  310.    EXAMPLE
  311.  
  312.    NOTES
  313.     This function is not guaranteed to capture consecutive color frames,
  314.     as the processing delays incurred may prohibit this.  This may make
  315.     capturing more than 4 fields at a time somewhat useless, yet perhaps
  316.     interesting.
  317.  
  318.     This function does not fully support the CAF_VIDEO and CAF_AUDIOL/R
  319.     flags.  It always captures video only without audio.  It is also not
  320.     currently capable of capturing audio only.
  321.  
  322.     Be careful when appending fields onto a clip that was recorded
  323.     "live", as no checking is done to see that the attributes of appended
  324.     fields are correct for the rest of the clip (such as VIDEO and/or
  325.     AUDIO flags).  Since audio is not currently supported by this
  326.     function, just be sure that fields are appended only to video-only
  327.     clips (or just build new clips using this function).
  328.  
  329.    BUGS
  330.  
  331.    SEE ALSO
  332.  
  333. flyer.library/BeginFindField                     flyer.library/BeginFindField
  334.  
  335.    NAME
  336.     BeginFindField - Prepare to shuttle/jog a clip
  337.  
  338.    SYNOPSIS
  339.     error = BeginFindField(clipaction)
  340.     D0                     A0
  341.  
  342.     ULONG BeginFindField(struct ClipAction *);
  343.  
  344.    FUNCTION
  345.     Prepares Flyer for a shuttle/jog session for the named clip.  Call
  346.     this when the user brings up the control panel for a clip.
  347.  
  348.     You must prepare a ClipAction structure with the desired parameters
  349.     then pass a pointer to it to this routine, which allows the Flyer to
  350.     prepare itself internally.  All calls to DoFindField, FindFieldAudio,
  351.     and EndFindField must be passed this same structure pointer.
  352.  
  353.     See also FindFieldAudio.
  354.  
  355.     The fields which need setup prior to calling BeginFindField:
  356.        ca_Volume       Ptr to FlyerVolume structure
  357.  
  358.        ca_Channel      Video channel to use during session
  359.  
  360.        ca_Flags        CAB_VIDEO to see found frames
  361.                        CAB_AUDIO1 and/or 2 to hear found frames
  362.                           (here it is legal to set none)
  363.  
  364.        ca_VolSust1
  365.        ca_VolSust2     Volume for audio channels
  366.  
  367.        fv_Path         Name of clip -- if volume name is prepended,
  368.                           then the next 3 fields can be left blank
  369.  
  370.        fv_Board        Flyer board number
  371.        fv_SCSIchannel  SCSI channel on which clip resides (optional)
  372.        fv_SCSIdrive    Drive on SCSI channel on which clip resides
  373.                           (optional)
  374.  
  375.  
  376.  
  377.     This call should always have a matching EndFindField call eventually.
  378.     Do not call this twice without an intervening call to EndFindField.
  379.  
  380.     The result from this call should be checked.  A 0 value indicates all
  381.     went well, the Flyer is prepared for "DoFindField" calls.  Any non-0
  382.     value indicates a failure, most likely that the named file could not
  383.     be found on the specified drive (do not call EndFindField on it).
  384.  
  385.    INPUTS
  386.     clipaction - specifies the name of the clip
  387.  
  388.    RESULT
  389.  
  390.    EXAMPLE
  391.  
  392.    NOTES
  393.     This call does not return until ready for DoFindField calls (???)
  394.  
  395.    BUGS
  396.  
  397.    SEE ALSO
  398.     FindFieldAudio
  399.  
  400. flyer.library/ChangeAudio                           flyer.library/ChangeAudio
  401.  
  402.    NAME
  403.     ChangeAudio - Change audio parameters of a clip that is in progress
  404.  
  405.    SYNOPSIS
  406.     error = ChangeAudio(clipaction)
  407.     D0                  A0
  408.  
  409.     ULONG ChangeAudio(struct ClipAction *);
  410.  
  411.    FUNCTION
  412.     This routine allows a clip that is in progress to have its audio
  413.     parameters adjusted.  Simply modify the audio field(s) desired
  414.     (or the CAB_AUDIO1/2 flags) in the structure used to initially start
  415.     the clip, then call this function with a pointer to that structure.
  416.  
  417.    INPUTS
  418.     clipaction - pointer to same structure clip was initiated with
  419.  
  420.    RESULT
  421.  
  422.    EXAMPLE
  423.  
  424.    NOTES
  425.  
  426.    BUGS
  427.  
  428.    SEE ALSO
  429.  
  430. flyer.library/CheckAction                           flyer.library/CheckAction
  431.  
  432.    NAME
  433.     CheckAction - Check progress of an actions
  434.  
  435.    SYNOPSIS
  436.     status = CheckAction(action)
  437.     D0                   A0
  438.  
  439.     ULONG CheckAction(struct ClipAction *);
  440.  
  441.    FUNCTION
  442.     Checks if the operation associated with the provided ClipAction
  443.     pointer has finished or not.  Returns FERR_OKAY if the action has
  444.     finished, or FERR_BUSY if it is still in progress.
  445.  
  446.     Also, starting with rev 4.08, updates the (new) ca_Status field with
  447.     current status for the command.  This data is only available with
  448.     certain commands that use ClipAction structures (still "RSN").
  449.  
  450.    INPUTS
  451.     action - pointer to structure that was used to issue the original
  452.              command
  453.  
  454.    RESULT
  455.     status = FERR_OKAY or FERR_BUSY
  456.  
  457.    EXAMPLE
  458.  
  459.    NOTES
  460.  
  461.    BUGS
  462.  
  463.    SEE ALSO
  464.     WaitAction
  465.  
  466. flyer.library/CloseField                             flyer.library/CloseField
  467.  
  468.    NAME
  469.     CloseField - Closes an OpenReadField or (Easy)OpenWriteField
  470.  
  471.    SYNOPSIS
  472.     error = CloseField(action)
  473.     D0                 A0
  474.  
  475.     ULONG CloseField(struct ClipAction *);
  476.  
  477.    FUNCTION
  478.     Closes the field which was previously opened using an OpenReadField,
  479.     OpenWriteField, or EasyOpenWriteField call.  In the case of a write
  480.     session being closed, any unwritten data is written to the clip.
  481.     Also, if less than a full field of scan lines was written, fills in
  482.     remainder with fill color (usually black).
  483.  
  484.     Returns FERR_FULL if not enough room left in current field to write
  485.     any remaining data.
  486.  
  487.     The only structure field which needs setup prior to calling
  488.     CloseField:
  489.        ca_FldHandle   Field handle returned from successful
  490.                       OpenReadField or (Easy)OpenWriteField call
  491.  
  492.    INPUTS
  493.     action - pointer to structure which contains field handle to close
  494.  
  495.    RESULT
  496.  
  497.    EXAMPLE
  498.  
  499.    NOTES
  500.  
  501.    BUGS
  502.  
  503.    SEE ALSO
  504.     EasyOpenWriteField
  505.     OpenReadField
  506.     OpenWriteField
  507.     SetFillColor
  508.  
  509. flyer.library/CopyData                                 flyer.library/CopyData
  510.  
  511.    NAME
  512.     CopyData - Copy data from one location to another
  513.  
  514.    SYNOPSIS
  515.     error = CopyData(srcvolume,destvolume,srcaddr,blocks,destaddr)
  516.     D0               A0        A1         D0      D1     D2
  517.  
  518.     ULONG CopyData(struct FlyerVolume *,struct FlyerVolume *,ULONG,ULONG,
  519.             ULONG);
  520.  
  521.    FUNCTION
  522.     Copies a range of data from one drive to another.  This currently
  523.     works with a start block number and a block count.  The start
  524.     locations may be different on the src and dest drives.  This function
  525.     may also be used to move data on the same drive.  Handles making a
  526.     copy which overlaps original on same drive.
  527.  
  528.     Can also read/write to/from a tape drive by simply using -1 for the
  529.     appropriate address (srcaddr or destaddr).
  530.  
  531.    INPUTS
  532.     srcvolume - pointer to structure which describes a volume (used to
  533.        pick specific Flyer card).
  534.  
  535.     destvolume - pointer to structure which describes a volume (used to
  536.        pick specific Flyer card).
  537.  
  538.     srcaddr - SCSI block address on source drive
  539.  
  540.     blocks - number of SCSI blocks to copy
  541.  
  542.     destaddr - SCSI block address on destination drive
  543.  
  544.    RESULT
  545.  
  546.    EXAMPLE
  547.  
  548.    NOTES
  549.     May copy slower than "real-time" playback rate if copying to and from
  550.     the same drive.
  551.  
  552.    BUGS
  553.  
  554.    SEE ALSO
  555.  
  556. flyer.library/CPUDMA                                     flyer.library/CPUDMA
  557.  
  558.    NAME
  559.     CPUDMA -- Transfer data between DMA memory and CPU memory
  560.  
  561.    SYNOPSIS
  562.     error = CPUDMA(board,cpuptr,dmaptr,length,readflag)
  563.     D0             D0    A0     A1     D1     D2
  564.  
  565.     ULONG CPUDMA(UBYTE,ULONG,ULONG,UWORD,UBYTE);
  566.  
  567.    FUNCTION
  568.     This function transfers blocks of data between the Flyer's DRAM and SRAM
  569.     areas.  All pointers and sizes are in blocks (512 bytes).  "Writes" are
  570.     TO SRAM, "reads" are FROM SRAM.
  571.  
  572.     CAUTION! These memory areas are highly private and dangerous to access.
  573.     Use only under advisement or based on sample code.
  574.  
  575.    INPUTS
  576.     board - specifies the Flyer board (0-3)
  577.  
  578.     cpuptr - CPU address (block)
  579.  
  580.     dmaptr - DMA address (block)
  581.  
  582.     length - length of transfer (in blocks)
  583.  
  584.     readflag - 0=write, 1=read
  585.  
  586.    RESULT
  587.  
  588.    EXAMPLE
  589.  
  590.    NOTES
  591.  
  592.    BUGS
  593.  
  594.    SEE ALSO
  595.  
  596. flyer.library/Defaults                                 flyer.library/Defaults
  597.  
  598.    NAME
  599.     Defaults - clear given ClipAction structure(s) to default values
  600.  
  601.    SYNOPSIS
  602.     error = Defaults(clipaction)
  603.     D0               A0
  604.  
  605.     VOID Defaults(struct ClipAction *);
  606.  
  607.    FUNCTION
  608.     Clears the given ClipAction structure to default values, as well as
  609.     the attached FlyerVolume structure.  See structure documentation for
  610.     default values.
  611.  
  612.    INPUTS
  613.     clipaction - pointer to a ClipAction structure.  Will also setup
  614.        FlyerVolume structure, if attached.
  615.  
  616.    RESULT
  617.  
  618.    EXAMPLE
  619.  
  620.    NOTES
  621.  
  622.    BUGS
  623.  
  624.    SEE ALSO
  625.     flyer.h
  626.  
  627. flyer.library/DoFindField                           flyer.library/DoFindField
  628.  
  629.    NAME
  630.     DoFindField - find a specific field in clip (and view/hear it)
  631.  
  632.    SYNOPSIS
  633.     error = DoFindField(clipaction)
  634.     D0                  A0
  635.  
  636.     ULONG DoFindField(struct ClipAction *);
  637.  
  638.    FUNCTION
  639.     Finds the color frame that contains the field number specified in
  640.     ca_VidStartField.  If the CAB_VIDEO flag was set, the frame's video
  641.     will loop on the output channel.  Also, if the CAB_AUDIO1/2 flag(s)
  642.     were set, the frame's audio will be heard.
  643.  
  644.     Currently, when the user stops in a particular spot, the color frame
  645.     loops repeatedly, but the audio (if on) is heard once per new frame
  646.     only.
  647.  
  648.     If the return value is non-0, something went wrong (such as the
  649.     requested field number is out of range for the clip).
  650.  
  651.    INPUTS
  652.     clipaction - same pointer as was used with BeginFindField
  653.  
  654.    RESULT
  655.  
  656.    EXAMPLE
  657.  
  658.    NOTES
  659.  
  660.    BUGS
  661.  
  662.    SEE ALSO
  663.  
  664. flyer.library/EasyOpenWriteField             flyer.library/EasyOpenWriteField
  665.  
  666.    NAME
  667.     EasyOpenWriteField - Open a clip field for writing (easy version)
  668.  
  669.    SYNOPSIS
  670.     error = EasyOpenWriteField(action,field,modes,quality)
  671.     D0                         A0     D0    D1    D2
  672.  
  673.     ULONG EasyOpenWriteField(struct ClipAction *,ULONG,UBYTE,UBYTE);
  674.  
  675.    FUNCTION
  676.     Provides an easier front-end for the more complicated OpenWriteField
  677.     call.
  678.  
  679.     See the description under OpenWriteField for a full description of
  680.     field writing and the "action", "field", and "modes" arguments.
  681.  
  682.    INPUTS
  683.     action - pointer to structure which describes a volume and the name
  684.              of the clip to operate on.
  685.  
  686.     field - field number of clip (starts at 0).  Is a don't care with
  687.             some open modes
  688.  
  689.     modes - flags describing how to handle writing field
  690.  
  691.     quality - a number representing the video quality
  692.  
  693.          Currently supported modes, in order of decreasing video quality:
  694.  
  695.             0 (D2)  Best quality, worst compression
  696.             1 (D2)
  697.             2 (SN)
  698.             3 (SN)
  699.             4 (SN)  Worst quality, best compression
  700.  
  701.    RESULT
  702.  
  703.    EXAMPLE
  704.  
  705.    NOTES
  706.  
  707.    BUGS
  708.  
  709.    SEE ALSO
  710.     CloseField
  711.     OpenReadField
  712.     OpenWriteField
  713.     FlyerWriteLine
  714.  
  715. flyer.library/EndClipCutList                     flyer.library/EndClipCutList
  716.  
  717.    NAME
  718.     EndClipCutList - Finalizes ClipCut list
  719.  
  720.    SYNOPSIS
  721.     error = EndClipCutList(doit)
  722.     D0                     D0
  723.  
  724.     ULONG EndClipCutList(UBYTE);
  725.  
  726.    FUNCTION
  727.     Finalizes a ClipCut list that was opened with StartClipCutList.  If
  728.     the "doit" flag is set, the processing will begin.  Otherwise, the
  729.     list is thrown away and the original clip remains unchanged.
  730.  
  731.     See StartClipCutList for a full description of this processing
  732.     mechanism.
  733.  
  734.    INPUTS
  735.     doit - flag: 0 aborts and discards list, 1 starts clip processing
  736.  
  737.    RESULT
  738.  
  739.    EXAMPLE
  740.  
  741.    NOTES
  742.  
  743.    BUGS
  744.  
  745.    SEE ALSO
  746.     StartClipCutList
  747.     AddClipCut
  748.  
  749. flyer.library/EndFindField                         flyer.library/EndFindField
  750.  
  751.    NAME
  752.     EndFindField - Cleanup after a shuttle/jog session
  753.  
  754.    SYNOPSIS
  755.     error = EndFindField(clipaction)
  756.     D0                   A0
  757.  
  758.     ULONG EndFindField(struct ClipAction *);
  759.  
  760.    FUNCTION
  761.     This call frees up resources allocated with a BeginFindField call.
  762.     Call when the control panel for a clip is put away.  You must pass
  763.     a pointer to the same structure as was passed to BeginFindField.
  764.     If CAF_USEMATTE flag is true in the ClipAction structure, this call
  765.     will also put up the specified matte color on the video channel.
  766.  
  767.     A return value of 0 indicates all went well.
  768.  
  769.    INPUTS
  770.     clipaction - same pointer as was used for entire shuttle/jog session.
  771.  
  772.    RESULT
  773.  
  774.    EXAMPLE
  775.  
  776.    NOTES
  777.     Only matte black is currently supported for CAF_USEMATTE
  778.  
  779.    BUGS
  780.  
  781.    SEE ALSO
  782.  
  783. flyer.library/EndHeadList                           flyer.library/EndHeadList
  784.  
  785.    NAME
  786.     EndHeadList - Completes list of A/B heads
  787.  
  788.    SYNOPSIS
  789.     error = EndHeadList(board,makeit)
  790.     D0                  D0    D1
  791.  
  792.     ULONG EndHeadList(UBYTE,UBYTE);
  793.  
  794.    FUNCTION
  795.     Completes list of A/B heads.  If 'makeit' is 0, the list is thrown
  796.     away (aborted).  Otherwise, the Flyer then begins creating heads.
  797.     It may use old clip heads that already exist or create new ones.
  798.     Any old heads that are not used in the list are deleted.
  799.  
  800.    INPUTS
  801.     board - specifies the Flyer board (0-3)
  802.  
  803.     makeit - flag
  804.  
  805.    RESULT
  806.  
  807.    EXAMPLE
  808.  
  809.    NOTES
  810.  
  811.    BUGS
  812.  
  813.    SEE ALSO
  814.  
  815. flyer.library/EndSequence                           flyer.library/EndSequence
  816.  
  817.    NAME
  818.     EndSequence - Finalizes the Flyer's internal sequence
  819.  
  820.    SYNOPSIS
  821.     error = EndSequence(board,doit)
  822.     D0                  D0    D1
  823.  
  824.     ULONG EndSequence(UBYTE, UBYTE);
  825.  
  826.    FUNCTION
  827.     Finalizes the sequence definition that was downloaded.  Post process-
  828.     ing occurs at this time, such as sequence optimization and temporary
  829.     data movement.  This call, therefore, may take a while to complete.
  830.     When it does, the sequence is ready to play (using PlaySequence).
  831.  
  832.     If the "doit" flag is FALSE (0), no post processing is done, but the
  833.     sequence is closed (this is required as an "abort" during sequence
  834.     downloading).
  835.  
  836.     See NewSequence for more info on Flyer sequencing.
  837.  
  838.    INPUTS
  839.     board - specifies the Flyer board (0-3)
  840.  
  841.     doit - flag: 0 aborts and discards sequence, 1 starts post-processing
  842.  
  843.    RESULT
  844.  
  845.    EXAMPLE
  846.  
  847.    NOTES
  848.  
  849.    BUGS
  850.  
  851.    SEE ALSO
  852.     AddSeqClip
  853.     EndSequenceNew
  854.     NewSequence
  855.     PlaySequence
  856.  
  857. flyer.library/EndSequenceNew                     flyer.library/EndSequenceNew
  858.  
  859.    NAME
  860.     EndSequenceNew -- Finalizes the Flyer's internal sequence (extra features)
  861.  
  862.    SYNOPSIS
  863.     error = EndSequenceNew(action, doit)
  864.     D0                     A0      D0
  865.  
  866.     ULONG EndSequenceNew(struct ClipAction *, UBYTE);
  867.  
  868.    FUNCTION
  869.     Identical to EndSequence function, except that it uses a ClipAction structur
  870. e,
  871.     which specifies the Flyer board number.  This allows some enhanced things
  872.     during the sometimes lengthy sequence processing phase, such as the ability
  873.     to be run asynchronously, ability to be aborted, and the ability for the
  874.     application to obtain status during this phase.
  875.  
  876.    INPUTS
  877.     clipaction - specifies the board number in the attached Volume structure
  878.  
  879.     doit - flag: 0 aborts and discards sequence, 1 starts post-processing
  880.  
  881.    RESULT
  882.  
  883.    EXAMPLE
  884.  
  885.    NOTES
  886.  
  887.    BUGS
  888.  
  889.    SEE ALSO
  890.     AddSeqClip
  891.     EndSequence
  892.     NewSequence
  893.     PlaySequence
  894.  
  895. flyer.library/Error2String                         flyer.library/Error2String
  896.  
  897.    NAME
  898.     Error2String - Convert a Flyer error code into an error string
  899.  
  900.    SYNOPSIS
  901.     desc = Error2String(error)
  902.                         D0
  903.  
  904.     char * Error2String(UBYTE);
  905.  
  906.    FUNCTION
  907.     Gives an descriptive string for the supplied Flyer error code.
  908.     Simply returns a pointer to the string.  DO NOT MODIFY THE DATA IN
  909.     THIS STRING.
  910.  
  911.    INPUTS
  912.     error - an error code returned by a Flyer call
  913.  
  914.    RESULT
  915.     desc - pointer to a static string which describes the error condition
  916.  
  917.    EXAMPLE
  918.  
  919.    NOTES
  920.     Does not currently convert some of the more "internal" Flyer errors,
  921.     but just gives "???".
  922.  
  923.    BUGS
  924.  
  925.    SEE ALSO
  926.  
  927. flyer.library/FindDrives                             flyer.library/FindDrives
  928.  
  929.    NAME
  930.     FindDrives -- Find responding drives on SCSI bus
  931.  
  932.    SYNOPSIS
  933.     error = FindDrives(flyervolume,buffer)
  934.     D0                 A0          A1
  935.  
  936.     ULONG FindDrives(struct FlyerVolume *,APTR);
  937.  
  938.    FUNCTION
  939.     This function scans one of the Flyer's SCSI busses, looking for
  940.     drives at each of the possible unit numbers.  An array of data
  941.     is returned which gives some rudimentary information about which
  942.     unit numbers correspond to a present drive, as well as some info
  943.     which is helpful in getting more detailed data (with the Inquiry
  944.     command.
  945.  
  946.    INPUTS
  947.     volume - pointer to structure which specifies bus to scan for drives
  948.  
  949.     buffer - pointer to an 18 byte buffer which receives results
  950.  
  951.    RESULT
  952.     Format of data array:
  953.  
  954.     UBYTE DriveFlags;  // '1' bit at (1<<unit) for each drive present
  955.     UBYTE pad;
  956.     UBYTE Versions[8]; // SCSI versions of each drive found, [x] = unit
  957.     UBYTE InqLens[8];  // Inquiry lengths of each drive found, [x] = unit
  958.  
  959.    EXAMPLE
  960.  
  961.    NOTES
  962.  
  963.    BUGS
  964.  
  965.    SEE ALSO
  966.     Inquiry
  967.  
  968. flyer.library/FindFieldAudio                     flyer.library/FindFieldAudio
  969.  
  970.    NAME
  971.     FindFieldAudio - change audio parameters during shuttle/jog session
  972.  
  973.    SYNOPSIS
  974.     error = FindFieldAudio(clipaction)
  975.     D0                     A0
  976.  
  977.     ULONG FindFieldAudio(struct ClipAction *);
  978.  
  979.    FUNCTION
  980.     This call allows you to change the status of the audio flag while in
  981.     the middle of a shuttle session (overrides the initial audioflag
  982.     specified in BeginFindField).  To effect the change, modify the
  983.     CAB_AUDIO flags in ca_Flags and pass the structure to this routine.
  984.     Call this as many times as needed (whenever the user clicks the audio
  985.     button on/off), but do not call it outside of the Begin/EndFindField
  986.     pair.
  987.  
  988.     A return value of 0 indicates all went well.
  989.  
  990.    INPUTS
  991.     clipaction - same pointer as was used for entire shuttle/jog session.
  992.  
  993.    RESULT
  994.  
  995.    EXAMPLE
  996.  
  997.    NOTES
  998.  
  999.    BUGS
  1000.  
  1001.    SEE ALSO
  1002.  
  1003. flyer.library/Firmware                                 flyer.library/Firmware
  1004.  
  1005.    NAME
  1006.     Firmware - Download and run software on Flyer CPU
  1007.  
  1008.    SYNOPSIS
  1009.     error = Firmware(board,length,data,offset)
  1010.     D0               D0    D1     A0   D2
  1011.  
  1012.     ULONG Firmware(UBYTE,ULONG,APTR,ULONG);
  1013.  
  1014.    FUNCTION
  1015.     Downloads the provided binary file to the Flyer and executes it
  1016.     as the controlling software.
  1017.  
  1018.    INPUTS
  1019.     board - specifies the Flyer board (0-3)
  1020.  
  1021.     length - length of data provided
  1022.  
  1023.     offset - offset address in shared SRAM
  1024.  
  1025.     data - pointer to binary data
  1026.  
  1027.    RESULT
  1028.  
  1029.    EXAMPLE
  1030.  
  1031.    NOTES
  1032.  
  1033.    BUGS
  1034.  
  1035.    SEE ALSO
  1036.  
  1037. flyer.library/FlyerAudioCtrl                     flyer.library/FlyerAudioCtrl
  1038.  
  1039.    NAME
  1040.     FlyerAudioCtrl - Sense/control audio rec level/aux input functions
  1041.  
  1042.    SYNOPSIS
  1043.     error = FlyerAudioCtrl(board,FlyAudCtrl,oper)
  1044.     D0                     D0    A0         D1
  1045.  
  1046.     ULONG FlyerAudioCtrl(UBYTE,struct FlyAudCtrl *,UBYTE);
  1047.  
  1048.    FUNCTION
  1049.     Provides access to the Flyer's audio subsystem.  This provides a
  1050.     means of smartly setting the input gain on record, as well as control
  1051.     over the Flyer's auxilliary audio inputs.
  1052.  
  1053.     The "oper" flags describe which portions of the FlyAudCtrl structure
  1054.     to apply.  This allows modification of individual values, and the
  1055.     ability to sense input levels without changing any values.
  1056.  
  1057.    INPUTS
  1058.     board - specifies the Flyer board (0-3)
  1059.  
  1060.     FlyAudCtrl - pointer to FlyAudCtrl structure
  1061.  
  1062.     oper - various flags indicating what kind of operation(s) to perform:
  1063.        FACOF_SENSE   -- update LeftSense/RightSense values
  1064.        FACOF_SENSE8  -- update LeftSense/RightSense with 8-bit values
  1065.        FACOF_SETGAIN -- set input gain (for recording)
  1066.        FACOF_SETSRC  -- set the input selector mux
  1067.        FACOF_SETMIX  -- set auxilliary channel mixing values
  1068.  
  1069.        Any combination of these operations can be specified.
  1070.  
  1071.    RESULT
  1072.  
  1073.    EXAMPLE
  1074.  
  1075.    NOTES
  1076.     The LeftSense and RightSense values from FACOF_SENSE are interpreted:
  1077.        0 -- over -1.0 dB underrange
  1078.        1 -- 0 to -1.0 dB underrange
  1079.        2 -- 0 to 1.0 dB overrange
  1080.        3 -- over 1.0 dB overrange
  1081.     FACOF_SENSE8 causes Left/RightSense to contain 8 bit peak-reading
  1082.     values (low 8 bits truncated off)
  1083.  
  1084.    BUGS
  1085.  
  1086.    SEE ALSO
  1087.     flyer.h
  1088.  
  1089. flyer.library/FlyerCopyClip                       flyer.library/FlyerCopyClip
  1090.  
  1091.    NAME
  1092.     FlyerCopyClip - Fast copy a flyer clip
  1093.  
  1094.    SYNOPSIS
  1095.     error = FlyerCopyClip(srcvolume,destvolume)
  1096.     D0                    A0        A1
  1097.  
  1098.     ULONG FlyerCopyClip(struct FlyerVolume *,struct FlyerVolume *);
  1099.  
  1100.    FUNCTION
  1101.     Makes a copy of a Flyer clip using high speed copying (independent of
  1102.     Amiga host operating system).  Will fail if filename is not found
  1103.     on the source volume or if the destination filename already exists on
  1104.     the destination volume.  Will not create subdirectories for the
  1105.     destination name, so ensure entire path exists before starting copy.
  1106.  
  1107.     Source and destination volumes may be the same drive, but copying
  1108.     will be slower.
  1109.  
  1110.    INPUTS
  1111.     srcvolume - pointer to structure which describes the source clip's
  1112.                 path/name and the volume on which it is found.
  1113.  
  1114.     destvolume - pointer to structure which describes the destination
  1115.                  path/name and the volume on which to create it.  Must
  1116.                  always contain the path/name, even if not renaming clip
  1117.                  during copy.
  1118.  
  1119.    RESULT
  1120.  
  1121.    EXAMPLE
  1122.  
  1123.    NOTES
  1124.     Both source and destination volumes must be attached to the same
  1125.     Flyer card.
  1126.  
  1127.    BUGS
  1128.  
  1129.    SEE ALSO
  1130.     FlyerCopyClipNew
  1131.  
  1132. flyer.library/FlyerCopyClipNew                 flyer.library/FlyerCopyClipNew
  1133.  
  1134.    NAME
  1135.     FlyerCopyClipNew -- Fast copy a flyer clip (w/status & abort capabilities)
  1136.  
  1137.    SYNOPSIS
  1138.     error = FlyerCopyClipNew(srcaction,destvolume)
  1139.     D0                       A0        A1
  1140.  
  1141.     ULONG FlyerCopyClipNew(struct ClipAction *,struct FlyerVolume *);
  1142.  
  1143.    FUNCTION
  1144.     Identical to FlyerCopyClip function, except that it uses a ClipAction struct
  1145. ure
  1146.     to specify the source, which adds the ability to run it asynchronously, abil
  1147. ity
  1148.     to be aborted, and the ability to obtain status during a copy.
  1149.  
  1150.    INPUTS
  1151.     srcaction - pointer to structure which describes the source volume and clip
  1152.             name.  "ReturnTime" and "Status" fields are also used.
  1153.  
  1154.     destvolume - pointer to structure which describes the destination
  1155.                  path/name and the volume on which to create it.  Must
  1156.                  always contain the path/name, even if not renaming clip
  1157.                  during copy.
  1158.  
  1159.    RESULT
  1160.  
  1161.    EXAMPLE
  1162.  
  1163.    NOTES
  1164.     Both source and destination volumes must be attached to the same
  1165.     Flyer card.
  1166.  
  1167.    BUGS
  1168.  
  1169.    SEE ALSO
  1170.     FlyerCopyClip
  1171.  
  1172. flyer.library/FlyerCreateDir                     flyer.library/FlyerCreateDir
  1173.  
  1174.    NAME
  1175.     FlyerCreateDir -- create a sub-directory on a Flyer drive
  1176.  
  1177.    SYNOPSIS
  1178.     error = FlyerCreateDir(clipaction)
  1179.     D0                     A0
  1180.  
  1181.     ULONG FlyerCreateDir(struct ClipAction *);
  1182.  
  1183.    FUNCTION
  1184.  
  1185.    INPUTS
  1186.     clipaction - specifies volume/path/name of the directory to create
  1187.  
  1188.    RESULT
  1189.  
  1190.    EXAMPLE
  1191.  
  1192.    NOTES
  1193.  
  1194.    BUGS
  1195.  
  1196.    SEE ALSO
  1197.  
  1198. flyer.library/FlyerDeFrag                           flyer.library/FlyerDeFrag
  1199.  
  1200.    NAME
  1201.     FlyerDeFrag - De-fragment hard drive
  1202.  
  1203.    SYNOPSIS
  1204.     error = FlyerDeFrag(volume)
  1205.     D0                  A0
  1206.  
  1207.     ULONG FlyerDeFrag(struct FlyerVolume *);
  1208.  
  1209.    FUNCTION
  1210.     Begins defragmentation process on specified drive.
  1211.  
  1212.    INPUTS
  1213.     volume - pointer to structure which describes the volume to defrag
  1214.  
  1215.    RESULT
  1216.  
  1217.    EXAMPLE
  1218.  
  1219.    NOTES
  1220.     Currently accepts no parameters and cannot be interrupted
  1221.  
  1222.    BUGS
  1223.     Reports of bugs.  Unable to reproduce to date...
  1224.  
  1225.    SEE ALSO
  1226.     FlyerDeFragNew
  1227.  
  1228. flyer.library/FlyerDeFragNew                     flyer.library/FlyerDeFragNew
  1229.  
  1230.    NAME
  1231.     FlyerDeFragNew -- De-fragment hard drive (extra features)
  1232.  
  1233.    SYNOPSIS
  1234.     error = FlyerDeFragNew(clipaction)
  1235.     D0                     A0
  1236.  
  1237.     ULONG FlyerDeFragNew(struct ClipAction *);
  1238.  
  1239.    FUNCTION
  1240.     Begins defragmentation process on specified drive.  This is identical to
  1241.     FlyerDeFrag function, except that this one uses a ClipAction structure
  1242.     to specifies the Flyer drive.  This allows some enhanced things during
  1243.     defragmentation, such as the ability to be run asynchronously, ability
  1244.     to be aborted, and the ability for the application to obtain status
  1245.     while it's occurring.
  1246.  
  1247.    INPUTS
  1248.     clipaction - specifies the drive using an attached FlyerVolume structure
  1249.  
  1250.    RESULT
  1251.  
  1252.    EXAMPLE
  1253.  
  1254.    NOTES
  1255.  
  1256.    BUGS
  1257.  
  1258.    SEE ALSO
  1259.     FlyerDeFrag
  1260.  
  1261. flyer.library/FlyerDelete                           flyer.library/FlyerDelete
  1262.  
  1263.    NAME
  1264.     FlyerDelete -- Delete a file from a Flyer drive
  1265.  
  1266.    SYNOPSIS
  1267.     error = FlyerDelete(clipaction)
  1268.     D0                  A0
  1269.  
  1270.     ULONG FlyerDelete(struct ClipAction *);
  1271.  
  1272.    FUNCTION
  1273.  
  1274.    INPUTS
  1275.     clipaction - specifies the path/name of the file to delete
  1276.  
  1277.    RESULT
  1278.  
  1279.    EXAMPLE
  1280.  
  1281.    NOTES
  1282.  
  1283.    BUGS
  1284.  
  1285.    SEE ALSO
  1286.  
  1287. flyer.library/FlyerDirList                         flyer.library/FlyerDirList
  1288.  
  1289.    NAME
  1290.     FlyerDirList -- return first/next entry in a directory
  1291.  
  1292.    SYNOPSIS
  1293.     error = FlyerDirList(flyervolume,grip,objinfoptr,firstflag,fsonly)
  1294.     D0                   A0          D0   A1         D1        D2
  1295.  
  1296.     ULONG FlyerDirList(struct FlyerVolume *,ULONG,struct ClipInfo *,
  1297.             UBYTE,UBYTE);
  1298.  
  1299.    FUNCTION
  1300.  
  1301.    INPUTS
  1302.     volume - pointer to structure which specifies drive
  1303.  
  1304.     grip - grip of directory
  1305.  
  1306.     objinfoptr - Pointer to ClipInfo structure to receive info
  1307.  
  1308.     firstflag - 0 if first call, 1 for each additional
  1309.  
  1310.     fsonly - 0 for full information, 1 for just FileSys info
  1311.  
  1312.    RESULT
  1313.  
  1314.    EXAMPLE
  1315.  
  1316.    NOTES
  1317.  
  1318.    BUGS
  1319.  
  1320.    SEE ALSO
  1321.  
  1322. flyer.library/FlyerDriveCheck                   flyer.library/FlyerDriveCheck
  1323.  
  1324.    NAME
  1325.     FlyerDriveCheck - check if the specified drive has anything in it
  1326.  
  1327.    SYNOPSIS
  1328.     error = FlyerDriveCheck(volume)
  1329.     D0                      A0
  1330.  
  1331.     ULONG FlyerDriveCheck(struct FlyerVolume *);
  1332.  
  1333.    FUNCTION
  1334.     Checks to see if the specified board/channel/drive has media loaded.
  1335.     Note that you must use the FVF_USENUMS flags, since the use of a
  1336.     volume name is not logical here.
  1337.  
  1338.    INPUTS
  1339.     volume - pointer to structure which describes a volume
  1340.  
  1341.    RESULT
  1342.     error - FERR_OKAY or FERR_VOLNOTFOUND
  1343.  
  1344.    EXAMPLE
  1345.  
  1346.    NOTES
  1347.  
  1348.    BUGS
  1349.  
  1350.    SEE ALSO
  1351.  
  1352. flyer.library/FlyerDriveInfo                     flyer.library/FlyerDriveInfo
  1353.  
  1354.    NAME
  1355.     FlyerDriveInfo - Return general information about a drive
  1356.  
  1357.    SYNOPSIS
  1358.     error = FlyerDriveInfo(volume,volinfo)
  1359.     D0                     A0     A1
  1360.  
  1361.     ULONG FlyerDriveInfo(struct FlyerVolume *,struct FlyerVolInfo *);
  1362.  
  1363.    FUNCTION
  1364.     This returns general information about the drive, including the
  1365.     volume name, total number of blocks, number of blocks free,
  1366.     size of largest contiguous block, and free block size if DeFrag
  1367.     would be performed.
  1368.  
  1369.     If volptr is NULL, just fills in info in FlyerVolume structure only.
  1370.  
  1371.    INPUTS
  1372.     volume - pointer to structure which specifies volume
  1373.  
  1374.     volinfo - pointer to structure to receive information about volume
  1375.  
  1376.    RESULT
  1377.  
  1378.    EXAMPLE
  1379.  
  1380.    NOTES
  1381.  
  1382.    BUGS
  1383.  
  1384.    SEE ALSO
  1385.  
  1386. flyer.library/FlyerFileClose                     flyer.library/FlyerFileClose
  1387.  
  1388.    NAME
  1389.     FlyerFileClose -- close a file
  1390.  
  1391.    SYNOPSIS
  1392.     error = FlyerFileClose(flyervolume,fileID)
  1393.     D0                     A0          D0
  1394.  
  1395.     ULONG FlyerFileClose(struct FlyerVolume *,ULONG);
  1396.  
  1397.    FUNCTION
  1398.  
  1399.    INPUTS
  1400.     volume - pointer to same structure as passed to FlyerFileOpen
  1401.  
  1402.     fileID - ID returned from FlyerFileOpen call
  1403.  
  1404.    RESULT
  1405.  
  1406.    EXAMPLE
  1407.  
  1408.    NOTES
  1409.  
  1410.    BUGS
  1411.  
  1412.    SEE ALSO
  1413.     FlyerFileOpen
  1414.  
  1415. flyer.library/FlyerFileExtend                   flyer.library/FlyerFileExtend
  1416.  
  1417.    NAME
  1418.     FlyerFileExtend -- Extend an open Flyer file without have to write data
  1419.  
  1420.    SYNOPSIS
  1421.     error = FlyerFileExtend(flyervolume,fileID,size)
  1422.     D0                     A0          D0     D1  
  1423.  
  1424.     ULONG FlyerFileExtend(struct FlyerVolume *,ULONG,ULONG,UBYTE *,
  1425.             ULONG *);
  1426.  
  1427.    FUNCTION
  1428.  
  1429.    INPUTS
  1430.     volume - pointer to same structure as passed to FlyerFileOpen
  1431.  
  1432.     fileID - ID returned from FlyerFileOpen call
  1433.  
  1434.     size - number of bytes to extend by.
  1435.  
  1436.    RESULT
  1437.  
  1438.    EXAMPLE
  1439.  
  1440.    NOTES
  1441.  
  1442.    BUGS
  1443.  
  1444.    SEE ALSO
  1445.  
  1446. flyer.library/FlyerFileHSRead                   flyer.library/FlyerFileHSRead
  1447.  
  1448.    NAME
  1449.     FlyerFileHSRead -- read blocks from an open Flyer file
  1450.  
  1451.    SYNOPSIS
  1452.     error = FlyerFileHSRead(flyervolume,fileID,startblk,blkcount,buffer)
  1453.     D0                      A0          D0     D1       D2         A1    
  1454.  
  1455.     ULONG FlyerFileHSRead(struct FlyerVolume *,ULONG,ULONG,ULONG,UBYTE *);
  1456.  
  1457.    FUNCTION
  1458.  
  1459.    INPUTS
  1460.     volume - pointer to same structure as passed to FlyerFileOpen
  1461.  
  1462.     fileID - ID returned from FlyerFileOpen call
  1463.  
  1464.     startblk - Block number to begin reading on
  1465.     
  1466.     blkcount - Number of blocks to read
  1467.  
  1468.     buffer - pointer to buffer in amiga fastram
  1469.  
  1470.    RESULT
  1471.  
  1472.    EXAMPLE
  1473.  
  1474.    NOTES
  1475.  
  1476.    BUGS
  1477.  
  1478.    SEE ALSO
  1479.  
  1480. flyer.library/FlyerFileHSWrite                 flyer.library/FlyerFileHSWrite
  1481.  
  1482.    NAME
  1483.     FlyerFileHSWrite -- write to an open Flyer file
  1484.  
  1485.    SYNOPSIS
  1486.     error = FlyerFileHSWrite(flyervolume,fileID,startblk,blkcount,buffer)
  1487.     D0                       A0          D0     D1       D2       A1
  1488.  
  1489.     ULONG FlyerFileHSWrite(struct FlyerVolume *,ULONG,ULONG,ULONG,UBYTE *);
  1490.  
  1491.    FUNCTION
  1492.  
  1493.    INPUTS
  1494.     volume - pointer to same structure as passed to FlyerFileOpen
  1495.  
  1496.     fileID - ID returned from FlyerFileOpen call
  1497.  
  1498.     startblk - Block number to begin writing on
  1499.     
  1500.     blkcount - Number of blocks to write
  1501.  
  1502.     buffer - pointer to buffer in amiga fastram
  1503.  
  1504.  
  1505.    RESULT
  1506.  
  1507.    EXAMPLE
  1508.  
  1509.    NOTES
  1510.  
  1511.    BUGS
  1512.  
  1513.    SEE ALSO
  1514.  
  1515. flyer.library/FlyerFileOpen                       flyer.library/FlyerFileOpen
  1516.  
  1517.    NAME
  1518.     FlyerFileOpen -- open a file on a Flyer drive for reading/writing
  1519.  
  1520.    SYNOPSIS
  1521.     error = FlyerFileOpen(clipaction)
  1522.     D0                    A0
  1523.  
  1524.     ULONG FlyerFileOpen(struct ClipAction *);
  1525.  
  1526.    FUNCTION
  1527.  
  1528.    INPUTS
  1529.     clipaction - specifies the name of the file to open
  1530.  
  1531.    RESULT
  1532.  
  1533.    EXAMPLE
  1534.  
  1535.    NOTES
  1536.  
  1537.    BUGS
  1538.  
  1539.    SEE ALSO
  1540.  
  1541. flyer.library/FlyerFileRead                       flyer.library/FlyerFileRead
  1542.  
  1543.    NAME
  1544.     FlyerFileRead -- read from an open Flyer file
  1545.  
  1546.    SYNOPSIS
  1547.     error = FlyerFileRead(flyervolume,fileID,size,buffer,actual)
  1548.     D0                    A0          D0     D1   A1     A2
  1549.  
  1550.     ULONG FlyerFileRead(struct FlyerVolume *,ULONG,ULONG,UBYTE *,
  1551.             ULONG *);
  1552.  
  1553.    FUNCTION
  1554.  
  1555.    INPUTS
  1556.     volume - pointer to same structure as passed to FlyerFileOpen
  1557.  
  1558.     fileID - ID returned from FlyerFileOpen call
  1559.  
  1560.     size - number of bytes to read
  1561.  
  1562.     buffer - pointer to buffer to receive data
  1563.  
  1564.     actual - pointer to variable to receive count of actual bytes read
  1565.  
  1566.    RESULT
  1567.  
  1568.    EXAMPLE
  1569.  
  1570.    NOTES
  1571.  
  1572.    BUGS
  1573.  
  1574.    SEE ALSO
  1575.  
  1576. flyer.library/FlyerFileSeek                       flyer.library/FlyerFileSeek
  1577.  
  1578.    NAME
  1579.     FlyerFileSeek -- seek to a given position in a file
  1580.  
  1581.    SYNOPSIS
  1582.     error = FlyerFileSeek(flyervolume,fileID,pos_ext,pos,mode,posptr,oldposptr)
  1583.     D0                    A0          D0     D1      D2  D3   A1     A2
  1584.  
  1585.     ULONG FlyerFileSeek(struct FlyerVolume *,ULONG,DLONG,UBYTE,DLONG *,
  1586.             DLONG *);
  1587.  
  1588.    FUNCTION
  1589.  
  1590.    INPUTS
  1591.     volume - pointer to same structure as passed to FlyerFileOpen
  1592.  
  1593.     fileID - ID returned from FlyerFileOpen call
  1594.  
  1595.     pos_ext - requested new file position (per 'mode' below)(high 32 bits)
  1596.  
  1597.     pos - requested new file position (per 'mode' below)(low 32 bits)
  1598.  
  1599.     mode - seek mode to apply to 'pos' (FLYER_POS_xxx)
  1600.  
  1601.     posptr - pointer to variable to receive new file position
  1602.  
  1603.     oldposptr - pointer to variable to receive old file position
  1604.  
  1605.    RESULT
  1606.  
  1607.    EXAMPLE
  1608.  
  1609.    NOTES
  1610.     I don't like passing individual ULONGs for the requested position
  1611.     and pointers to DLONGS for the results, but our lack of address registers
  1612.     means we can't do it the consistent way.  This way does have the advantage
  1613.     of changing the prototype for the function enough to warn us if an older 
  1614.     version of fileseek is being called
  1615.  
  1616.    BUGS
  1617.  
  1618.    SEE ALSO
  1619.     flyer.h
  1620.  
  1621. flyer.library/FlyerFileWrite                     flyer.library/FlyerFileWrite
  1622.  
  1623.    NAME
  1624.     FlyerFileWrite -- write to an open Flyer file
  1625.  
  1626.    SYNOPSIS
  1627.     error = FlyerFileWrite(flyervolume,fileID,size,buffer,actual)
  1628.     D0                     A0          D0     D1   A1     A2
  1629.  
  1630.     ULONG FlyerFileWrite(struct FlyerVolume *,ULONG,ULONG,UBYTE *,
  1631.             ULONG *);
  1632.  
  1633.    FUNCTION
  1634.  
  1635.    INPUTS
  1636.     volume - pointer to same structure as passed to FlyerFileOpen
  1637.  
  1638.     fileID - ID returned from FlyerFileOpen call
  1639.  
  1640.     size - number of bytes to write
  1641.  
  1642.     buffer - pointer to buffer which contains data
  1643.  
  1644.     actual - pointer to variable to receive count of actual bytes written
  1645.  
  1646.    RESULT
  1647.  
  1648.    EXAMPLE
  1649.  
  1650.    NOTES
  1651.  
  1652.    BUGS
  1653.  
  1654.    SEE ALSO
  1655.  
  1656. flyer.library/FlyerFormat                           flyer.library/FlyerFormat
  1657.  
  1658.    NAME
  1659.     FlyerFormat - High-level format a drive with the Flyer's filesystem
  1660.  
  1661.    SYNOPSIS
  1662.     error = FlyerFormat(volume,name,datestamp,blocks,flags)
  1663.     D0                  A0     A1   A2        D0     D1
  1664.  
  1665.     ULONG FlyerFormat(struct FlyerVolume *,char *,struct DateStamp *,
  1666.             ULONG,UBYTE);
  1667.  
  1668.    FUNCTION
  1669.     This function does a high-level format on a drive connected to the
  1670.     Flyer.  Not all sectors are read/write tested, so this is a "quick"
  1671.     format.  The format procedure normally uses the entire drive, but
  1672.     this can be reduced to avoid using slower parts of the drive.
  1673.  
  1674.    INPUTS
  1675.     volume - NULL string, specifies drive to format
  1676.  
  1677.     name - pointer to a null-terminated string to use for the volume name
  1678.  
  1679.     datestamp - pointer to an AmigaDOS DateStamp structure to use as the
  1680.        drive's creation date
  1681.  
  1682.     blocks - NULL for entire drive, or the number of sectors to use for
  1683.        video data.  WARNING!  This does not actually prohibit the
  1684.        Flyer from using the remaining space, but gives a cutoff
  1685.        point beyond which no video clips may be placed.  Non time-
  1686.        critical data may eventually be placed in this "slow" region.
  1687.  
  1688.     flags - FVIF_xxx flags to request to be applied to this drive
  1689.        (specifically FVIF_VIDEOREADY and FVIF_AUDIOREADY).  FlyerFormat
  1690.        will test the speed of the drive and clear the video flag if it
  1691.        does not find it capable.  This allows drives to be targeted
  1692.        as data only, data/audio, or data/audio/video.
  1693.  
  1694.    RESULT
  1695.  
  1696.    EXAMPLE
  1697.  
  1698.    NOTES
  1699.     Do not use an fv_Path string to specify the drive.  Specify a NULL
  1700.     string and specify the exact drive specifically with fv_SCSIdrive.
  1701.     This will prevent formatting the wrong drive if two exist with
  1702.     identical volume names!
  1703.  
  1704.    BUGS
  1705.  
  1706.    SEE ALSO
  1707.     flyer.h
  1708.  
  1709. flyer.library/FlyerInputSel                       flyer.library/FlyerInputSel
  1710.  
  1711.    NAME
  1712.     FlyerInputSel - Select Flyer video input sources
  1713.  
  1714.    SYNOPSIS
  1715.     error = FlyerInputSel(board,video,sync)
  1716.     D0                    D0    D1    D2
  1717.  
  1718.     ULONG FlyerInputSel(UBYTE,UBYTE,UBYTE);
  1719.  
  1720.    FUNCTION
  1721.     Specifies what video channel to use for recording to the Flyer and
  1722.     where to get sync.
  1723.  
  1724.    INPUTS
  1725.     board - specifies the Flyer board (0-3)
  1726.  
  1727.     video - video source to record
  1728.        FI_Camcorder   = Flyer camcorder input (TBC required)
  1729.        FI_SVHS        = Flyer SVHS input (TBC required)
  1730.        FI_Toaster1    = Toaster input 1
  1731.        FI_Toaster2    = Toaster input 2
  1732.        FI_ToasterMain = Toaster Main bus output
  1733.        FI_ToasterPV   = Toaster Preview bus output
  1734.  
  1735.     sync - video source to use as a reference
  1736.        FS_ToasterMain = Toaster Main output
  1737.        FS_Toaster1    = Toaster input 1
  1738.  
  1739.    RESULT
  1740.  
  1741.    EXAMPLE
  1742.  
  1743.    NOTES
  1744.     Any changes to video or sync source using this command should be
  1745.     given sufficient time to "settle" before beginning to record.
  1746.  
  1747.    BUGS
  1748.  
  1749.    SEE ALSO
  1750.     FlyerTermination
  1751.     ToasterMux
  1752.  
  1753. flyer.library/FlyerNewFileRead                 flyer.library/FlyerNewFileRead
  1754.  
  1755.    NAME
  1756.     FlyerNewFileRead -- read from an open Flyer file
  1757.  
  1758.    SYNOPSIS
  1759.     error = FlyerNewFileRead(flyervolume,fileID,size,buffer,actual)
  1760.     D0                       A0          D0     D1   A1     A2
  1761.  
  1762.     ULONG FlyerNewFileRead(struct FlyerVolume *,ULONG,ULONG,UBYTE *,
  1763.             ULONG *);
  1764.  
  1765.    FUNCTION
  1766.  
  1767.    INPUTS
  1768.     volume - pointer to same structure as passed to FlyerFileOpen
  1769.  
  1770.     fileID - ID returned from FlyerFileOpen call
  1771.  
  1772.     size - number of bytes to read
  1773.  
  1774.     buffer - pointer to buffer to receive data
  1775.  
  1776.     actual - pointer to variable to receive count of actual bytes read
  1777.  
  1778.    RESULT
  1779.  
  1780.    EXAMPLE
  1781.  
  1782.    NOTES
  1783.  
  1784.    BUGS
  1785.  
  1786.    SEE ALSO
  1787.  
  1788. flyer.library/FlyerNewFileWrite               flyer.library/FlyerNewFileWrite
  1789.  
  1790.    NAME
  1791.     FlyerNewFileWrite -- write to an open Flyer file
  1792.  
  1793.    SYNOPSIS
  1794.     error = FlyerFileHSWrite(flyervolume,fileID,size,buffer,actual)
  1795.     D0                       A0          D0     D1   A1     A2
  1796.  
  1797.     ULONG FlyerNewFileWrite(struct FlyerVolume *,ULONG,ULONG,UBYTE *,
  1798.             ULONG *);
  1799.  
  1800.    FUNCTION
  1801.  
  1802.    INPUTS
  1803.     volume - pointer to same structure as passed to FlyerFileOpen
  1804.  
  1805.     fileID - ID returned from FlyerFileOpen call
  1806.  
  1807.     size - number of bytes to write
  1808.  
  1809.     buffer - pointer to buffer which contains data
  1810.  
  1811.     actual - pointer to variable to receive count of actual bytes written
  1812.  
  1813.    RESULT
  1814.     actual     - passed in a2 is address to return actual amt written.
  1815.     error    - error code is returned in d0.    
  1816.  
  1817.    EXAMPLE
  1818.  
  1819.    NOTES
  1820.  
  1821.     more error conditions can be incountered here
  1822.     
  1823.     FERR_FULL,'Drive full'
  1824.     FERR_CANTEXTEND,'Cannot extend file'
  1825.  
  1826.   maybe but, scsi problems are real trouble and file shouldn't open for 
  1827.     write if drive/file protected.
  1828.     FERR_PROTECTED,'Drive write-protected'
  1829.     FERR_INCOMPLETE,'SCSI tranfer not completed fully'
  1830.     FERR_WRITEPROT,'File write-protected'
  1831.     FERR_INUSE,'Disk/object in use'
  1832.  
  1833.   REALLY should just check for errors when writing to file!
  1834.  
  1835.    BUGS
  1836.  
  1837.    SEE ALSO
  1838.  
  1839. flyer.library/FlyerPlay                               flyer.library/FlyerPlay
  1840.  
  1841.    NAME
  1842.     FlyerPlay - Play a video/audio clip
  1843.  
  1844.    SYNOPSIS
  1845.     error = FlyerPlay(clipaction)
  1846.     D0                A0
  1847.  
  1848.     ULONG FlyerPlay(struct ClipAction *);
  1849.  
  1850.    FUNCTION
  1851.     Plays a video/audio clip as specified in the structure whose pointer
  1852.     is given.  The definition of this structure is in "Flyer.h".
  1853.  
  1854.     This call can be made to return at different times, depending on the
  1855.     value of ReturnTime.
  1856.  
  1857.     If the video channel or SCSI channel needed to accomplish this action
  1858.     are in use when this clip needs to begin, the PermissFlags indicate
  1859.     what actions the Flyer can take to free up the necessary resource(s).
  1860.     CAPB_STEALOURVIDEO allows the Flyer to stop a clip on the video
  1861.     channel specified for this new play.  CAPB_KILLOTHERVIDEO allows the
  1862.     Flyer to stop clips on other video channels if needed to gain access
  1863.     to the SCSI drive for this new clip.
  1864.  
  1865.     If the CAPB_ERRIFBUSY flag is set, this call will return with error
  1866.     FERR_CHANINUSE if the clip cannot be played without waiting for other
  1867.     resources.  If this flag is not set, the Flyer will delay playback if
  1868.     needed while waiting for resources it needs.
  1869.  
  1870.     When using a ReturnTime of RTT_STOPPED, you may modify/recycle the
  1871.     ClipAction structure once this call returns.  For RTT_IMMED and
  1872.     RTT_STARTED, you must not modify the ClipAction structure until the
  1873.     clip stops or is aborted.  Use AbortAction() to abort playback, and
  1874.     CheckProgress(), CheckAction(), or WaitAction() to determine when
  1875.     it's safe to reuse the structure.
  1876.  
  1877.     If CAF_USEMATTE flag is true in the ClipAction structure, the video
  1878.     channel this function uses will change to the matte color specified
  1879.     in MatteY,MatteI,MatteQ fields when the clip finishes or is stopped.
  1880.  
  1881.    INPUTS
  1882.     clipaction - pointer to structure containing all information needed
  1883.        for playback, and to receive results when done.
  1884.  
  1885.    RESULT
  1886.  
  1887.    EXAMPLE
  1888.  
  1889.    NOTES
  1890.     Only matte black is currently supported for CAF_USEMATTE
  1891.  
  1892.    BUGS
  1893.  
  1894.    SEE ALSO
  1895.  
  1896. flyer.library/FlyerQuit                               flyer.library/FlyerQuit
  1897.  
  1898.    NAME
  1899.     FlyerQuit -- Stop Flyer execution, return to boot ROM
  1900.  
  1901.    SYNOPSIS
  1902.     error = FlyerQuit(board)
  1903.     D0           D0
  1904.  
  1905.     ULONG FlyerQuit(UBYTE);
  1906.  
  1907.    FUNCTION
  1908.  
  1909.    INPUTS
  1910.     board - specifies the Flyer board (0-3)
  1911.  
  1912.    RESULT
  1913.  
  1914.    EXAMPLE
  1915.  
  1916.    NOTES
  1917.  
  1918.    BUGS
  1919.  
  1920.    SEE ALSO
  1921.  
  1922. flyer.library/FlyerReadCalib                     flyer.library/FlyerReadCalib
  1923.  
  1924.    NAME
  1925.     FlyerReadCalib - Inspect the Flyer's calibration registers
  1926.  
  1927.    SYNOPSIS
  1928.     error = FlyerReadCalib(board,item,valueptr)
  1929.     D0                     D0    D1   A0
  1930.  
  1931.     ULONG FlyerReadCalib(UBYTE,UWORD,WORD *);
  1932.  
  1933.    FUNCTION
  1934.     Reads the specified Flyer calibration register.  See flyer.h for
  1935.     the "item" values (CALIB_xxxx).  Value placed at pointer "valueptr".
  1936.  
  1937.    INPUTS
  1938.     board - specifies the Flyer board (0-3)
  1939.  
  1940.     item - which register to change (see flyer.h)
  1941.  
  1942.     valueptr - pointer to a UWORD to fill in with the value
  1943.  
  1944.    RESULT
  1945.  
  1946.    EXAMPLE
  1947.  
  1948.    NOTES
  1949.  
  1950.    BUGS
  1951.  
  1952.    SEE ALSO
  1953.     FlyerWriteCalib
  1954.  
  1955. flyer.library/FlyerReadLine                       flyer.library/FlyerReadLine
  1956.  
  1957.    NAME
  1958.     FlyerReadLine - Read a scan line from a field previously opened
  1959.  
  1960.    SYNOPSIS
  1961.     error = FlyerReadLine(action,buffer)
  1962.     D0                    A0     A1
  1963.  
  1964.     ULONG FlyerReadLine(struct ClipAction *,UBYTE *);
  1965.  
  1966.    FUNCTION
  1967.     Decompresses next scan line from open field and transfers into
  1968.     caller's buffer (must be big enough to receive 752 bytes).  NTSC line
  1969.     21 is the first line read from the field, and 262 is the last.  Any
  1970.     extra calls will fill the buffer with the fill color (usually black).
  1971.  
  1972.     This function does software emulation of the Flyer's hardware which
  1973.     converts VTASC-compressed data into D2 data, including FIR filtering.
  1974.  
  1975.     The fields which need setup prior to calling FlyerReadLine:
  1976.        ca_FldHandle  - Field handle from successful OpenReadField
  1977.        ca_ReturnTime - RT_xxx value desired (not currently supported)
  1978.  
  1979.    INPUTS
  1980.     action - pointer to structure which contains the field handle to read
  1981.        from and the return time for this call.
  1982.  
  1983.     buffer - buffer to receive composite scan line data
  1984.  
  1985.    RESULT
  1986.  
  1987.    EXAMPLE
  1988.  
  1989.    NOTES
  1990.  
  1991.    BUGS
  1992.  
  1993.    SEE ALSO
  1994.     CloseField
  1995.     OpenReadField
  1996.     SetFillColor
  1997.     FlyerWriteLine
  1998.  
  1999. flyer.library/FlyerRecord                           flyer.library/FlyerRecord
  2000.  
  2001.    NAME
  2002.     FlyerRecord - Record a video/audio clip
  2003.  
  2004.    SYNOPSIS
  2005.     error = FlyerRecord(clipaction)
  2006.     D0                  A0
  2007.  
  2008.     ULONG FlyerRecord(struct ClipAction *);
  2009.  
  2010.    FUNCTION
  2011.     Records a video/audio clip as specified in the structure whose
  2012.     pointer is given.  The definition of this structure is in "Flyer.h".
  2013.  
  2014.     Except when ReturnTime = RTT_STOPPED, recording can be stopped at any
  2015.     time with the AbortAction() command (see below).
  2016.  
  2017.     Do not call with both CAB_AUDIO1/2 and CAB_VIDEO flags clear, as this
  2018.     is nonsensical.
  2019.  
  2020.     If the video channel or SCSI channel needed to accomplish this action
  2021.     are in use when this clip needs to begin, the PermissFlags indicate
  2022.     what actions the Flyer can take to free up the necessary resource(s).
  2023.     CAPB_STEALOURVIDEO allows the Flyer to stop a clip on the video
  2024.     channel specified for this new record.  CAPB_KILLOTHERVIDEO allows
  2025.     the Flyer to stop clips on other video channels if needed to gain
  2026.     access to the SCSI drive for this new clip.
  2027.  
  2028.     If the CAPB_ERRIFBUSY flag is set, this call will return with error
  2029.     FERR_CHANINUSE if the clip cannot be recorded without waiting for
  2030.     other resources.  If this flag is not set, the Flyer will delay
  2031.     recording if needed while waiting for resources it needs.
  2032.  
  2033.     When using a ReturnTime of RTT_STOPPED, you may modify/recycle the
  2034.     ClipAction structure once this call returns.  For RTT_IMMED and
  2035.     RTT_STARTED, you must not modify the ClipAction structure until the
  2036.     clip stops or is aborted.  Use AbortAction() to abort recording, and
  2037.     CheckProgress(), CheckAction(), or WaitAction() to determine when
  2038.     it's safe to reuse the structure.
  2039.  
  2040.    INPUTS
  2041.     clipaction - pointer to structure containing all information needed
  2042.        for recording, and to receive results when done.
  2043.  
  2044.    RESULT
  2045.  
  2046.    EXAMPLE
  2047.  
  2048.    NOTES
  2049.  
  2050.    BUGS
  2051.  
  2052.    SEE ALSO
  2053.  
  2054. flyer.library/FlyerRename                           flyer.library/FlyerRename
  2055.  
  2056.    NAME
  2057.     FlyerRename -- rename a file/dir on a Flyer drive
  2058.  
  2059.    SYNOPSIS
  2060.     error = FlyerRename(oldclip,newgrip,newname)
  2061.     D0                  A0      D0      A1
  2062.  
  2063.     ULONG FlyerRename(struct ClipAction *,ULONG,char *);
  2064.  
  2065.    FUNCTION
  2066.  
  2067.    INPUTS
  2068.     oldclip - specifies the path/name of the file to rename
  2069.  
  2070.     newgrip - base grip to which 'newname' is relative
  2071.  
  2072.     newname - new path/name for file (relative to 'newgrip')
  2073.  
  2074.    RESULT
  2075.  
  2076.    EXAMPLE
  2077.  
  2078.    NOTES
  2079.  
  2080.    BUGS
  2081.  
  2082.    SEE ALSO
  2083.  
  2084. flyer.library/FlyerRenameDisk                   flyer.library/FlyerRenameDisk
  2085.  
  2086.    NAME
  2087.     FlyerRenameDisk -- rename a Flyer drive volume
  2088.  
  2089.    SYNOPSIS
  2090.     error = FlyerRenameDisk(flyervolume,newname)
  2091.     D0                      A0          A1
  2092.  
  2093.     ULONG FlyerRenameDisk(struct FlyerVolume *,char *);
  2094.  
  2095.    FUNCTION
  2096.  
  2097.    INPUTS
  2098.     volume - pointer to structure which specifies drive
  2099.  
  2100.     newname - pointer to new name string for volume
  2101.  
  2102.    RESULT
  2103.  
  2104.    EXAMPLE
  2105.  
  2106.    NOTES
  2107.  
  2108.    BUGS
  2109.  
  2110.    SEE ALSO
  2111.  
  2112. flyer.library/FlyerRunning                         flyer.library/FlyerRunning
  2113.  
  2114.    NAME
  2115.     FlyerRunning -- test if Flyer firmware is downloaded and running
  2116.  
  2117.    SYNOPSIS
  2118.     error = FlyerRunning(board)
  2119.     D0                   D0
  2120.  
  2121.     ULONG FlyerRunning(UBYTE);
  2122.  
  2123.    FUNCTION
  2124.  
  2125.    INPUTS
  2126.     board - specifies the Flyer board (0-3)
  2127.  
  2128.    RESULT
  2129.  
  2130.    EXAMPLE
  2131.  
  2132.    NOTES
  2133.  
  2134.    BUGS
  2135.  
  2136.    SEE ALSO
  2137.  
  2138. flyer.library/FlyerSetBits                         flyer.library/FlyerSetBits
  2139.  
  2140.    NAME
  2141.     FlyerSetBits -- set protect bits for dir/file
  2142.  
  2143.    SYNOPSIS
  2144.     error = FlyerSetBits(flyervolume,grip,bits)
  2145.     D0                   A0          D0   D1
  2146.  
  2147.     ULONG FlyerSetBits(struct FlyerVolume *,ULONG,ULONG);
  2148.  
  2149.    FUNCTION
  2150.  
  2151.    INPUTS
  2152.     volume - pointer to structure which specifies drive/path/name of file
  2153.  
  2154.     grip - grip of file/dir
  2155.  
  2156.     bits - new bits (32)
  2157.  
  2158.    RESULT
  2159.  
  2160.    EXAMPLE
  2161.  
  2162.    NOTES
  2163.  
  2164.    BUGS
  2165.  
  2166.    SEE ALSO
  2167.  
  2168. flyer.library/FlyerSetComment                   flyer.library/FlyerSetComment
  2169.  
  2170.    NAME
  2171.     FlyerSetComment -- set comment for dir/file
  2172.  
  2173.    SYNOPSIS
  2174.     error = FlyerSetComment(flyervolume,grip,comment)
  2175.     D0                      A0          D0   A1
  2176.  
  2177.     ULONG FlyerSetComment(struct FlyerVolume *,ULONG,char *);
  2178.  
  2179.    FUNCTION
  2180.  
  2181.    INPUTS
  2182.     volume - pointer to structure which specifies drive/path/name of file
  2183.  
  2184.     grip - grip of file/dir
  2185.  
  2186.     comment - new comment string
  2187.  
  2188.    RESULT
  2189.  
  2190.    EXAMPLE
  2191.  
  2192.    NOTES
  2193.  
  2194.    BUGS
  2195.  
  2196.    SEE ALSO
  2197.  
  2198. flyer.library/FlyerSetDate                         flyer.library/FlyerSetDate
  2199.  
  2200.    NAME
  2201.     FlyerSetDate -- set date for file/dir
  2202.  
  2203.    SYNOPSIS
  2204.     error = FlyerSetDate(flyervolume,grip,days,minutes,ticks)
  2205.     D0                   A0          D0   D1   D2      D3
  2206.  
  2207.     ULONG FlyerSetDate(struct FlyerVolume *,ULONG,ULONG,ULONG,ULONG);
  2208.  
  2209.    FUNCTION
  2210.  
  2211.    INPUTS
  2212.     volume - pointer to structure which specifies drive/path/name of file
  2213.  
  2214.     grip - grip of file/dir
  2215.  
  2216.     days - date: days
  2217.  
  2218.     minutes - date: minutes
  2219.  
  2220.     ticks - date: ticks
  2221.  
  2222.    RESULT
  2223.  
  2224.    EXAMPLE
  2225.  
  2226.    NOTES
  2227.  
  2228.    BUGS
  2229.  
  2230.    SEE ALSO
  2231.  
  2232. flyer.library/FlyerStripAudio                   flyer.library/FlyerStripAudio
  2233.  
  2234.    NAME
  2235.     FlyerStripAudio - Strip audio from a clip, make an audio-only clip
  2236.  
  2237.    SYNOPSIS
  2238.     error = FlyerStripAudio(srcvolume,destvolume)
  2239.     D0                      A0        A1
  2240.  
  2241.     ULONG FlyerStripAudio(struct FlyerVolume *,struct FlyerVolume *);
  2242.  
  2243.    FUNCTION
  2244.     Creates a new clip containing only the audio from the source clip.
  2245.     Will fail if the source clip is not found or does not contain audio.
  2246.     Destination clip must not already exist on the destination volume, or
  2247.     an error will result.
  2248.  
  2249.     Both source and destination volumes must be attached to the same
  2250.     Flyer card.
  2251.  
  2252.    INPUTS
  2253.     srcvolume - pointer to structure which describes the source clip name
  2254.        and the volume on which it is found.
  2255.  
  2256.     destvolume - pointer to structure which describes the destination
  2257.        clip name and the volume on which to place it.
  2258.  
  2259.    RESULT
  2260.  
  2261.    EXAMPLE
  2262.  
  2263.    NOTES
  2264.  
  2265.    BUGS
  2266.  
  2267.    SEE ALSO
  2268.  
  2269. flyer.library/FlyerTermination                 flyer.library/FlyerTermination
  2270.  
  2271.    NAME
  2272.     FlyerTermination - Set Flyer's video termination on/off
  2273.  
  2274.    SYNOPSIS
  2275.     error = FlyerTermination(board,flags)
  2276.     D0                       D0    D1
  2277.  
  2278.     ULONG FlyerTermination(UBYTE,UBYTE);
  2279.  
  2280.    FUNCTION
  2281.     Specifies which of the Flyer's 4 video terminators to turn on.
  2282.  
  2283.    INPUTS
  2284.     board - specifies the Flyer board (0-3)
  2285.  
  2286.     flags - One flag for each of 4 terminators (0=off, 1=on)
  2287.        Bit 0 = Toaster Input 1 terminator
  2288.        Bit 1 = Toaster Input 3 terminator
  2289.        Bit 2 = Toaster Input 4 terminator
  2290.        Bit 3 = Toaster Main terminator
  2291.  
  2292.        Power-up default is Inputs 3 & 4 terminated, Main and Input 1 not
  2293.        terminated.
  2294.  
  2295.    RESULT
  2296.  
  2297.    EXAMPLE
  2298.  
  2299.    NOTES
  2300.  
  2301.    BUGS
  2302.  
  2303.    SEE ALSO
  2304.     FlyerInputSel
  2305.     ToasterMux
  2306.  
  2307. flyer.library/FlyerWriteCalib                   flyer.library/FlyerWriteCalib
  2308.  
  2309.    NAME
  2310.     FlyerWriteCalib - Manually set Flyer's calibration registers
  2311.  
  2312.    SYNOPSIS
  2313.     error = FlyerWriteCalib(board,item,value,saveflag)
  2314.     D0                      D0    D1   D2    D3
  2315.  
  2316.     ULONG FlyerWriteCalib(UBYTE,UWORD,WORD,UBYTE);
  2317.  
  2318.    FUNCTION
  2319.     Sets the value of one of the calibration registers.  See flyer.h for
  2320.     the "item" values (CALIB_xxxx).  Starting with the Rev 4 board, these
  2321.     values are kept in non-volatile memory on-board the Flyer.  To also
  2322.     save the specified value to memory, set the "saveflag" argument.
  2323.  
  2324.    INPUTS
  2325.     board - specifies the Flyer board (0-3)
  2326.  
  2327.     item - which register to change (see flyer.h)
  2328.  
  2329.     value - item-specific value
  2330.  
  2331.     saveflag - 0=just use value, 1=also save to non-volatile memory
  2332.  
  2333.    RESULT
  2334.  
  2335.    EXAMPLE
  2336.  
  2337.    NOTES
  2338.  
  2339.    BUGS
  2340.  
  2341.    SEE ALSO
  2342.     FlyerReadCalib
  2343.  
  2344. flyer.library/FlyerWriteLine                     flyer.library/FlyerWriteLine
  2345.  
  2346.    NAME
  2347.     FlyerWriteLine - Write a scan line to a field previously opened
  2348.  
  2349.    SYNOPSIS
  2350.     error = FlyerWriteLine(action,buffer)
  2351.     D0                     A0     A1
  2352.  
  2353.     ULONG FlyerWriteLine(struct ClipAction *,UBYTE *);
  2354.  
  2355.    FUNCTION
  2356.     Transfers scan line data from caller's buffer, compresses it, and
  2357.     places in the open clip as specified in (Easy)OpenWriteField call.
  2358.     Expects 752 bytes from caller's buffer.  NTSC line 21 is expected on
  2359.     the first call to this function, and 262 on the last.  Any extra
  2360.     calls will be ignored.
  2361.  
  2362.     This function does software emulation of the Flyer's hardware which
  2363.     converts D2 data into VTASC-compressed data, including FIR filtering.
  2364.  
  2365.     The fields which need setup prior to calling FlyerWriteLine:
  2366.        ca_FldHandle   - Field handle from successful OpenWriteField
  2367.                            or EasyOpenWriteField.
  2368.        ca_ReturnTime  - RT_xxx value desired (not currently supported)
  2369.  
  2370.     Returns FERR_FULL if out of room in current field
  2371.  
  2372.    INPUTS
  2373.     action - pointer to structure which contains the field handle to
  2374.        write to and the return time for this call.
  2375.  
  2376.     buffer - contains composite scan line data (will be modified)
  2377.  
  2378.    RESULT
  2379.  
  2380.    EXAMPLE
  2381.  
  2382.    NOTES
  2383.     Currently modifies the data at the "buffer" pointer
  2384.  
  2385.    BUGS
  2386.  
  2387.    SEE ALSO
  2388.     CloseField
  2389.     EasyOpenWriteField
  2390.     OpenWriteField
  2391.     FlyerReadLine
  2392.  
  2393. flyer.library/GetClipInfo                           flyer.library/GetClipInfo
  2394.  
  2395.    NAME
  2396.     GetClipInfo - get information about a specific clip
  2397.  
  2398.    SYNOPSIS
  2399.     error = GetClipInfo(volume,clipinfo)
  2400.     D0                  A0     A1
  2401.  
  2402.     ULONG GetClipInfo(struct FlyerVolume *,struct ClipInfo *);
  2403.  
  2404.    FUNCTION
  2405.     Fills in the provided ClipInfo structure with information about the
  2406.     specified clip.  Of particuar interest are: ci_fields equals the
  2407.     number of fields the clip contains, ci_flags describes the type of
  2408.     data in the clip.  See OIB_HASVIDEO and OIB_HASAUDIO in "Flyer.h".
  2409.     Data files (such as icons) will have neither flag set.
  2410.  
  2411.     You MUST initialize ci_len to the value CI_sizeof before calling this
  2412.     function.  This is to ensure that future Flyer software does not
  2413.     break old application software.
  2414.  
  2415.     A non-zero return code indicates a failure (structure is not filled
  2416.     in).  This call does not return until complete.  The structure may be
  2417.     modified or reused in any way after it returns.
  2418.  
  2419.     This routine is useful for obtaining info about a clip which has no
  2420.     icon.
  2421.  
  2422.     Also retrieves any starting SMPTE time-code from the clip, which can
  2423.     be read using GetSMPTE.
  2424.  
  2425.    INPUTS
  2426.     volume - pointer to a FlyerVolume structure which describes the clip
  2427.  
  2428.     clipinfo - pointer to structure to contain clip information
  2429.  
  2430.    RESULT
  2431.  
  2432.    EXAMPLE
  2433.  
  2434.    NOTES
  2435.  
  2436.    BUGS
  2437.  
  2438.    SEE ALSO
  2439.     GetSMPTE
  2440.  
  2441. flyer.library/GetFieldClock                       flyer.library/GetFieldClock
  2442.  
  2443.    NAME
  2444.     GetFieldClock - Retrieve the Flyer's field counter
  2445.  
  2446.    SYNOPSIS
  2447.     error = GetFieldClock(clockptr)
  2448.     D0                    A0
  2449.  
  2450.     ULONG GetFieldClock(ULONG *);
  2451.  
  2452.    FUNCTION
  2453.     This returns the Flyer's internal field counter by plugging it into
  2454.     the provided pointer to a ULONG.  If more than one Flyer exists, they
  2455.     are automatically sync'd together by the flyer.library.  Therefore,
  2456.     no board number or volume name is required for this function.
  2457.  
  2458.    INPUTS
  2459.     clockptr - pointer to ULONG to receive the clock value
  2460.  
  2461.    RESULT
  2462.  
  2463.    EXAMPLE
  2464.  
  2465.    NOTES
  2466.  
  2467.    BUGS
  2468.  
  2469.    SEE ALSO
  2470.  
  2471. flyer.library/GetFrameHeader                     flyer.library/GetFrameHeader
  2472.  
  2473.    NAME
  2474.     GetFrameHeader -- Read Frame Header structure from clip
  2475.  
  2476.    SYNOPSIS
  2477.     error = GetFrameHeader(action,buffer)
  2478.     D0                     A0     A1
  2479.  
  2480.     ULONG GetFrameHeader(struct ClipAction *,APTR);
  2481.  
  2482.    FUNCTION
  2483.     Retrieves a copy of a specific FrameHeader structure from an audio
  2484.     or video clip.  FrameHeader chosen is the one that contains the field
  2485.     number specified in ca_VidStartField (even for audio clips).
  2486.     Places data at the structure pointed to by "buffer".
  2487.  
  2488.     If the return value is not FERR_OKAY, something went wrong (such as
  2489.     the clip was not found, or the requested field number is out of range).
  2490.  
  2491.     Note: on success, clipaction->ca_StartBlk will contain the actual
  2492.     block number where the frame header is found, and
  2493.     clipaction->ca_Volume->fv_SCSIdrive will contain the actual drive number.
  2494.  
  2495.    INPUTS
  2496.     clipaction - specifies the volume/clip name and the desired field number
  2497.  
  2498.     buffer - Pointer to caller's structure to fill in
  2499.  
  2500.    RESULT
  2501.  
  2502.    EXAMPLE
  2503.  
  2504.    NOTES
  2505.  
  2506.    BUGS
  2507.  
  2508.    SEE ALSO
  2509.     PutFrameHeader
  2510.  
  2511. flyer.library/GetSMPTE                                 flyer.library/GetSMPTE
  2512.  
  2513.    NAME
  2514.     GetSMPTE - Return SMPTE time code information
  2515.  
  2516.    SYNOPSIS
  2517.     error = GetSMPTE(board,SMPTEinfo)
  2518.     D0               D0    A0
  2519.  
  2520.     ULONG GetSMPTE(UBYTE,struct SMPTEinfo *);
  2521.  
  2522.    FUNCTION
  2523.     This returns the last SMPTE time code information retrieved from a
  2524.     clip.
  2525.  
  2526.     This is generally used after a "DoFindField" call to retrieve the
  2527.     SMPTE information related to that field, or after a GetClipInfo call
  2528.     to get the start SMPTE time for the clip.
  2529.  
  2530.    INPUTS
  2531.     board - specifies the Flyer board (0-3)
  2532.  
  2533.     SMPTEinfo - pointer to SMPTEinfo structure to receive time code info
  2534.  
  2535.    RESULT
  2536.  
  2537.    EXAMPLE
  2538.  
  2539.    NOTES
  2540.  
  2541.    BUGS
  2542.  
  2543.    SEE ALSO
  2544.  
  2545. flyer.library/InitFlyerForce                     flyer.library/InitFlyerForce
  2546.  
  2547.    NAME
  2548.     InitFlyerForce - setup the Flyer card using a caller specified chipID
  2549.  
  2550.    SYNOPSIS
  2551.     error = InitFlyerForce(lock, id)
  2552.     D0                 D0     D5
  2553.  
  2554.     ULONG InitFlyerForce(BPTR, ULONG);
  2555.  
  2556.    FUNCTION
  2557.     Perform setup on all Flyer boards present (programs all chips,
  2558.     places all video channels in play mode, playing black).  Must be
  2559.     called from a process so that library can access DOS functions.
  2560.     Looks for all chip files needed in the directory which 'lock' is on,
  2561.     with the given chipID
  2562.  
  2563.    INPUTS
  2564.     lock - lock on directory in which to look for chip files
  2565.     id - ChipID to use to locate chip files to use in initializing the Flyer
  2566.  
  2567.    RESULT
  2568.  
  2569.    EXAMPLE
  2570.  
  2571.    NOTES
  2572.  
  2573.    BUGS
  2574.  
  2575.    SEE ALSO
  2576.  
  2577. flyer.library/InitFlyers                             flyer.library/InitFlyers
  2578.  
  2579.    NAME
  2580.     InitFlyers - setup all attached Flyer cards
  2581.  
  2582.    SYNOPSIS
  2583.     error = InitFlyers(lock)
  2584.     D0                 D0
  2585.  
  2586.     ULONG InitFlyers(BPTR);
  2587.  
  2588.    FUNCTION
  2589.     Perform setup on all Flyer boards present (programs all chips,
  2590.     places all video channels in play mode, playing black).  Must be
  2591.     called from a process so that library can access DOS functions.
  2592.     Looks for all chip files needed in the directory which 'lock' is on.
  2593.  
  2594.    INPUTS
  2595.     lock - lock on directory in which to look for chip files
  2596.  
  2597.    RESULT
  2598.  
  2599.    EXAMPLE
  2600.  
  2601.    NOTES
  2602.  
  2603.    BUGS
  2604.  
  2605.    SEE ALSO
  2606.  
  2607. flyer.library/Inquiry                                   flyer.library/Inquiry
  2608.  
  2609.    NAME
  2610.     Inquiry -- Do SCSI Inquiry command
  2611.  
  2612.    SYNOPSIS
  2613.     error = Inquiry(flyervolume,buffersize,buffer)
  2614.     D0              A0          D0         A1
  2615.  
  2616.     ULONG Inquiry(struct FlyerVolume *,UBYTE,APTR);
  2617.  
  2618.    FUNCTION
  2619.  
  2620.    INPUTS
  2621.     volume - pointer to structure which specifies drive
  2622.  
  2623.     buffersize - size of buffer provided (in bytes)
  2624.  
  2625.     buffer - pointer to buffer to receive Inquiry data
  2626.  
  2627.    RESULT
  2628.  
  2629.    EXAMPLE
  2630.  
  2631.    NOTES
  2632.  
  2633.    BUGS
  2634.  
  2635.    SEE ALSO
  2636.  
  2637. flyer.library/LocateField                           flyer.library/LocateField
  2638.  
  2639.    NAME
  2640.     LocateField - find a specific field in clip
  2641.  
  2642.    SYNOPSIS
  2643.     error = LocateField(clipaction)
  2644.     D0                  A0
  2645.  
  2646.     ULONG LocateField(struct ClipAction *);
  2647.  
  2648.    FUNCTION
  2649.     Finds the color frame that contains the field number specified in
  2650.     ca_VidStartField.  This differs from the Begin/Do/EndFindField calls
  2651.     in that this function just locates the field -- it does not attempt
  2652.     to play its video or audio.  Also, the Begin/Do/End trio are designed
  2653.     for multiple calls on the same clip (such as for jog/shuttling),
  2654.     whereas this function is much simpler for just one lookup operation.
  2655.  
  2656.     If the return value is not FERR_OKAY, something went wrong (such as
  2657.     the requested field number is out of range for the clip).
  2658.  
  2659.    INPUTS
  2660.     clipaction - structure that contains the following data
  2661.        ca_Volume         -- ptr to FlyerVolume structure which contains
  2662.                             the board, SCSI drive, and pathname for clip
  2663.        ca_VidStartField  -- field number to locate
  2664.  
  2665.    RESULT
  2666.     If ERR_OKAY returned, clipaction->ca_StartBlk will contain the
  2667.     block number of the frame header for the color frame which
  2668.     contains the requested field
  2669.  
  2670.    EXAMPLE
  2671.  
  2672.    NOTES
  2673.  
  2674.    BUGS
  2675.  
  2676.    SEE ALSO
  2677.  
  2678. flyer.library/LockFlyVolList                     flyer.library/LockFlyVolList
  2679.  
  2680.    NAME
  2681.     LockFlyVolList - obtain lock on internal Flyer volumes list
  2682.  
  2683.    SYNOPSIS
  2684.     ptr = LockFlyVolList()
  2685.     D0
  2686.  
  2687.     struct MinList *LockFlyVolList(void);
  2688.  
  2689.    FUNCTION
  2690.     Returns a pointer to a MinList containing the currently mounted Flyer
  2691.     volumes.  Also locks this list so that you may safely inspect it.  No
  2692.     modifications to the list are allowed.  Be sure to release lock using
  2693.     UnLockFlyVolList.
  2694.  
  2695.     A return value of 0 indicates a failure.
  2696.  
  2697.    INPUTS
  2698.  
  2699.    RESULT
  2700.     ptr - pointer to a MinList of Flyer Volume Node structures
  2701.        (or 0 for failure)
  2702.  
  2703.    EXAMPLE
  2704.  
  2705.    NOTES
  2706.  
  2707.    BUGS
  2708.  
  2709.    SEE ALSO
  2710.     UnLockFlyVolList
  2711.  
  2712. flyer.library/MakeClipHead                         flyer.library/MakeClipHead
  2713.  
  2714.    NAME
  2715.     MakeClipHead - Define an A/B head for the specified clip
  2716.  
  2717.    SYNOPSIS
  2718.     error = MakeClipHead(clipaction)
  2719.     D0                   A0
  2720.  
  2721.     ULONG MakeClipHead(struct ClipAction *);
  2722.  
  2723.    FUNCTION
  2724.     Define an A/B head for the specified clip.  Use the ca_VidStartField,
  2725.     ca_AudStartField, ca_VidFieldCount, and ca_AudFieldCount entries to
  2726.     specify where the head should start and how long it should be.
  2727.  
  2728.     This function can be used in two ways.  If used by itself, the A/B
  2729.     head is made immediately.  If used between StartHeadList and
  2730.     EndHeadList calls, the definition is just added to an internal list
  2731.     which will be created when EndHeadList is called with makeit=1.  The
  2732.     second method can optimize your A/B heads and can take advantage of
  2733.     heads already in existence to shorten its work load.  The immediate
  2734.     method of MakeClipHead cannot do any of these optimizations.
  2735.  
  2736.    INPUTS
  2737.     clipaction - specifies the clip and the in/out points
  2738.  
  2739.    RESULT
  2740.  
  2741.    EXAMPLE
  2742.  
  2743.    NOTES
  2744.  
  2745.    BUGS
  2746.  
  2747.    SEE ALSO
  2748.     VoidAllHeads
  2749.     VoidCardHeads
  2750.     VoidClipHead
  2751.  
  2752. flyer.library/MakeFlyerFile                       flyer.library/MakeFlyerFile
  2753.  
  2754.    NAME
  2755.     MakeFlyerFile - Create an empty file on a Flyer drive
  2756.  
  2757.    SYNOPSIS
  2758.     error = MakeFlyerFile(volume,blocks,startptr)
  2759.     D0                    A0     D0     A1
  2760.  
  2761.     ULONG MakeFlyerFile(struct FlyerVolume *,ULONG,ULONG *);
  2762.  
  2763.    FUNCTION
  2764.     Creates a file of a specified size on a Flyer drive and adds it to
  2765.     the drive's filesystem.  The start block for the file data area is
  2766.     returned to the caller, who may then fill the file with something
  2767.     useful.
  2768.  
  2769.     Previous library versions would only create files of a size which was
  2770.     a multiple of 512.  Starting rev 4.04, MakeFlyerFile can be used to
  2771.     create a file of any size, but for backward compatibility, here's how
  2772.     you must specify the size:
  2773.  
  2774.        Write the byte size into the variable that 'startptr' points to
  2775.        Pass 'blocks' value of 0
  2776.        Call MakeFlyerFile()
  2777.  
  2778.     The value pointed to by 'startptr' has the same meaning on return as
  2779.     before.
  2780.  
  2781.    INPUTS
  2782.     volume - pointer to structure which describes a volume and name for
  2783.        new file
  2784.  
  2785.     blocks - size of file in blocks (512 bytes each)
  2786.  
  2787.     startptr - ptr to a ULONG to receive the start block reserved for
  2788.        file's data.  This ULONG also contains the byte size of the file
  2789.        to create, providing that 'blocks' is 0.
  2790.  
  2791.    RESULT
  2792.  
  2793.    EXAMPLE
  2794.  
  2795.    NOTES
  2796.     Errors will be returned if not enough contiguous space for the file,
  2797.     or if a file of the same name already exists on that drive/path.
  2798.  
  2799.    BUGS
  2800.  
  2801.    SEE ALSO
  2802.     FlyerCopyClip, FlyerCopyClipNew
  2803.  
  2804. flyer.library/ModeSelect                             flyer.library/ModeSelect
  2805.  
  2806.    NAME
  2807.     ModeSelect -- Do SCSI ModeSelect command
  2808.  
  2809.    SYNOPSIS
  2810.     error = ModeSelect(flyervolume,buffersize,buffer,PFbyte)
  2811.     D0                 A0          D0         A1     D1
  2812.  
  2813.     ULONG ModeSelect(struct FlyerVolume *,UBYTE,APTR,UBYTE);
  2814.  
  2815.    FUNCTION
  2816.  
  2817.    INPUTS
  2818.     volume - pointer to structure which specifies drive
  2819.  
  2820.     buffersize - size of buffer provided (in bytes)
  2821.  
  2822.     buffer - pointer to buffer which contains ModeSelect data
  2823.  
  2824.     PFbyte - SCSI PageFormat byte
  2825.  
  2826.    RESULT
  2827.  
  2828.    EXAMPLE
  2829.  
  2830.    NOTES
  2831.  
  2832.    BUGS
  2833.  
  2834.    SEE ALSO
  2835.  
  2836. flyer.library/ModeSense                               flyer.library/ModeSense
  2837.  
  2838.    NAME
  2839.     ModeSense -- Do SCSI ModeSense command
  2840.  
  2841.    SYNOPSIS
  2842.     error = ModeSense(flyervolume,buffersize,page,buffer)
  2843.     D0                A0          D0         D1   A1
  2844.  
  2845.     ULONG ModeSense(struct FlyerVolume *,UBYTE,UBYTE,APTR);
  2846.  
  2847.    FUNCTION
  2848.  
  2849.    INPUTS
  2850.     volume - pointer to structure which specifies drive
  2851.  
  2852.     buffersize - size of buffer provided (in bytes)
  2853.  
  2854.     page - Mode page code to read
  2855.  
  2856.     buffer - pointer to buffer to receive ModeSense data
  2857.  
  2858.    RESULT
  2859.  
  2860.    EXAMPLE
  2861.  
  2862.    NOTES
  2863.  
  2864.    BUGS
  2865.  
  2866.    SEE ALSO
  2867.  
  2868. flyer.library/NewSequence                           flyer.library/NewSequence
  2869.  
  2870.    NAME
  2871.     NewSequence - Prepare Flyer for a sequence download
  2872.  
  2873.    SYNOPSIS
  2874.     error = NewSequence(board)
  2875.     D0                  D0
  2876.  
  2877.     ULONG NewSequence(UBYTE);
  2878.  
  2879.    FUNCTION
  2880.     Used to begin sending a sequence definition to the Flyer.  Then,
  2881.     using other calls, each piece of the sequence is defined, the
  2882.     sequence is "closed", and then it may be played with one call.  This
  2883.     is allows the Flyer to do much more complicated sequences
  2884.     successfully than by using FlyerPlay calls in a double-buffered
  2885.     fashion (which is now only supported in a limited way).
  2886.  
  2887.    INPUTS
  2888.     board - specifies the Flyer board (0-3)
  2889.  
  2890.    RESULT
  2891.  
  2892.    EXAMPLE
  2893.  
  2894.    NOTES
  2895.  
  2896.    BUGS
  2897.  
  2898.    SEE ALSO
  2899.     AddSeqClip
  2900.     EndSequence
  2901.     EndSequenceNew
  2902.     PlaySequence
  2903.  
  2904. flyer.library/OpenReadField                       flyer.library/OpenReadField
  2905.  
  2906.    NAME
  2907.     OpenReadField - Open a field from a clip for reading
  2908.  
  2909.    SYNOPSIS
  2910.     error = OpenReadField(action,field,modes)
  2911.     D0                    A0     D0    D1
  2912.  
  2913.     ULONG OpenReadField(struct ClipAction *,ULONG,UBYTE);
  2914.  
  2915.    FUNCTION
  2916.     Locates specified field of named clip and prepares to decompress
  2917.     and transfer each scan line of the field using the FlyerReadLine
  2918.     call.
  2919.  
  2920.     This function, if successful, places a valid ca_FldHandle in the
  2921.     ClipAction structure provided.  This same structure must be used for
  2922.     any other calls relating to this open field, or you must manually
  2923.     copy the value in ca_FldHandle into the ClipAction structure you wish
  2924.     to use.
  2925.  
  2926.     No compression information is required, as this information is
  2927.     embedded in the clips themselves.
  2928.  
  2929.    INPUTS
  2930.     action - pointer to structure which describes a volume and the name
  2931.        of the clip to operate on.
  2932.  
  2933.     field - field number of clip (starts at 0)
  2934.  
  2935.     modes - various flags
  2936.        FRF_HALFLINES - allows reading the half lines.  Without this
  2937.        flag set, half lines are skipped
  2938.  
  2939.    RESULT
  2940.  
  2941.    EXAMPLE
  2942.  
  2943.    NOTES
  2944.  
  2945.    BUGS
  2946.  
  2947.    SEE ALSO
  2948.     CloseField
  2949.     EasyOpenWriteField
  2950.     OpenWriteField
  2951.     FlyerReadLine
  2952.  
  2953. flyer.library/OpenWriteField                     flyer.library/OpenWriteField
  2954.  
  2955.    NAME
  2956.     OpenWriteField - Open a field from a clip for writing
  2957.  
  2958.    SYNOPSIS
  2959.     error = OpenWriteField(action,field,modes,compinfo)
  2960.     D0                     A0     D0    D1    A1
  2961.  
  2962.     ULONG OpenWriteField(struct ClipAction *,ULONG,UBYTE,
  2963.             struct VidCompInfo *);
  2964.  
  2965.    FUNCTION
  2966.     Prepares to transfer and compress each scan line of a field using the
  2967.     FlyerWriteLine call.  How the new data is integrated into the clip
  2968.     depends on the "modes" flags specified:
  2969.  
  2970.     FWF_NEW (field = dont care)
  2971.        Writes the first field of a new clip (deletes old if exists)
  2972.  
  2973.     FWF_APPEND (field = dont care)
  2974.        Appends another field onto the clip
  2975.  
  2976.     FWF_REWRITE (field = n)
  2977.        Overwrites an existing field in the clip (must be same size or
  2978.        smaller)
  2979.  
  2980.     FWF_APPEND + FWF_REWRITE (field = dont care)
  2981.        Replaces the last field.  Used for retrying with different
  2982.        compression
  2983.  
  2984.     FWF_APPEND + FWF_REWRITE + FWF_FRAME (field = n)
  2985.        Rewrite multiple fields in the last color frame (each field
  2986.        sequentially).  Field must be in the last color frame.  Used
  2987.        for retrying entire color frame with different compression.
  2988.  
  2989.     FWF_REWRITE + FWF_FRAME (field = n)
  2990.        Rewrite multiple fields in a color frame (each field
  2991.        sequentially).  Used for retrying entire color frame with
  2992.        different compression.
  2993.  
  2994.     FWF_HALFLINES allows writing of half lines.  Without this flag set,
  2995.        half lines are skipped and padded.
  2996.  
  2997.     "compinfo" points to a structure containing information about how to
  2998.     compress the data.  If this pointer is NULL, the Flyer will default
  2999.     to its best algorithm.
  3000.  
  3001.     This function, if successful, places a valid ca_FldHandle in the
  3002.     ClipAction structure provided.  This same structure must be used for
  3003.     any other calls relating to this open field, or you must manually
  3004.     copy the value in ca_FldHandle into the ClipAction structure you wish
  3005.     to use.
  3006.  
  3007.     This function may fail and return FERR_FULL if not enough contiguous
  3008.     storage exists at the end of the clip to handle appending a field.
  3009.  
  3010.     Also, field writing may fail if the data produced is too large for
  3011.     the hardware to play.  An FERR_FULL error from FlyerWriteLine
  3012.     indicates that the field needs to be compressed harder in order to
  3013.     fit.  If this happens, the field should be closed and reopened using
  3014.     a different level of compression or algorithm.  Also set the
  3015.     FWF_REWRITE mode flag to indicate to replace the previous data.
  3016.  
  3017.     When replacing fields in the middle of a clip, the compressed data
  3018.     must be the same size or smaller, as no space insertion is currently
  3019.     supported.  If an FERR_FULL occurs in this case, you must either
  3020.     retry with a tighter compression method or write the original field
  3021.     data back into the clip.  Otherwise, this field will flash
  3022.     unpredictable data near the bottom when the clip is played back.
  3023.  
  3024.     Always creates clips with integral color frames regardless of how
  3025.     many fields are written.  If a clip is left with less than a full
  3026.     color frame at the end, the remaining fields in the color frame are
  3027.     temporariliy padded with NTSC black.  These pad fields are auto-
  3028.     matically replaced when new fields are appended.
  3029.  
  3030.    INPUTS
  3031.     action - pointer to structure which describes a volume and the name
  3032.        of the clip to operate on.
  3033.  
  3034.     field - field number of clip (starts at 0).  Is a don't care with
  3035.        some open modes (see below)
  3036.  
  3037.     modes - flags describing how to handle writing field
  3038.        FWF_NEW     - Erase existing clip (if any), start new clip
  3039.        FWF_APPEND  - Append field to clip
  3040.        FWF_REWRITE - Re-write over field
  3041.        FWF_FRAME   - Re-write field (must redo all following fields in
  3042.                      the same color frame)
  3043.  
  3044.     compinfo - pointer to a VidCompInfo structure (or null for defaults)
  3045.  
  3046.    RESULT
  3047.  
  3048.    EXAMPLE
  3049.  
  3050.    NOTES
  3051.     Replacing fields in the middle of clips not fully tested
  3052.  
  3053.    BUGS
  3054.  
  3055.    SEE ALSO
  3056.     CloseField
  3057.     EasyOpenWriteField
  3058.     OpenReadField
  3059.     FlyerWriteLine
  3060.  
  3061. flyer.library/PauseAction                           flyer.library/PauseAction
  3062.  
  3063.    NAME
  3064.     PauseAction - pause/resume a previously started action
  3065.  
  3066.    SYNOPSIS
  3067.     error = PauseAction(action,pauseflag)
  3068.     D0                  A0     D0
  3069.  
  3070.     ULONG PauseAction(struct ClipAction *,UBYTE pauseflag);
  3071.  
  3072.    FUNCTION
  3073.     Pauses or resumes a Flyer action that has been previously started.
  3074.     Provide a pointer to the ClipAction structure used to start the
  3075.     action.  No error occurs if action is already in the state specified
  3076.     (already paused, for example).  AbortAction can be used to terminate
  3077.     a paused action.
  3078.  
  3079.     Does nothing if the action has already finished.
  3080.  
  3081.    INPUTS
  3082.     action - ptr to ClipAction structure used to start the action
  3083.  
  3084.     pauseflag - 1 to pause, 0 to resume
  3085.  
  3086.    RESULT
  3087.  
  3088.    EXAMPLE
  3089.  
  3090.    NOTES
  3091.     Currently works only with FlyerRecord actions
  3092.  
  3093.    BUGS
  3094.  
  3095.    SEE ALSO
  3096.     AbortAction
  3097.  
  3098. flyer.library/PlayMode                                 flyer.library/PlayMode
  3099.  
  3100.    NAME
  3101.     PlayMode - Ready Flyer for playback
  3102.  
  3103.    SYNOPSIS
  3104.     error = PlayMode(board)
  3105.     D0               D0
  3106.  
  3107.     ULONG PlayMode(UBYTE);
  3108.  
  3109.    FUNCTION
  3110.     Readies the Flyer for playback.  This takes about 1/2 second.
  3111.  
  3112.     Return value indicates success (0) or the error code on failure
  3113.  
  3114.    INPUTS
  3115.     board - specifies the Flyer board (0-3)
  3116.  
  3117.    RESULT
  3118.  
  3119.    EXAMPLE
  3120.  
  3121.    NOTES
  3122.     You must currently ensure that no playing or recording is occurring
  3123.     before calling this function
  3124.  
  3125.    BUGS
  3126.  
  3127.    SEE ALSO
  3128.  
  3129. flyer.library/PlaySequence                         flyer.library/PlaySequence
  3130.  
  3131.    NAME
  3132.     PlaySequence - Play the Flyer's internal sequence
  3133.  
  3134.    SYNOPSIS
  3135.     error = PlaySequence(board,basetime)
  3136.     D0                   D0    D1
  3137.  
  3138.     ULONG PlaySequence(UBYTE, ULONG);
  3139.  
  3140.    FUNCTION
  3141.     Starts the sequence playing that was previously downloaded to the
  3142.     Flyer.  "basetime" is the time (on the Flyer's clock) to begin.  All
  3143.     components in the sequence are relative to this start time.
  3144.  
  3145.     This call returns immediately so that takes, effects may be done
  3146.     synchronous with the sequence.  No other interaction with the Flyer
  3147.     is required (or recommended) for the sequence to play, other than
  3148.     aborting the sequence early (with AbortSequence).
  3149.  
  3150.     See NewSequence for more info on Flyer sequencing.
  3151.  
  3152.    INPUTS
  3153.     board - specifies the Flyer board (0-3)
  3154.  
  3155.    RESULT
  3156.  
  3157.    EXAMPLE
  3158.  
  3159.    NOTES
  3160.  
  3161.    BUGS
  3162.  
  3163.    SEE ALSO
  3164.     AddSeqClip
  3165.     EndSequence
  3166.     EndSequenceNew
  3167.     NewSequence
  3168.  
  3169. flyer.library/PutFrameHeader                     flyer.library/PutFrameHeader
  3170.  
  3171.    NAME
  3172.     PutFrameHeader -- Write Frame Header structure back to clip
  3173.  
  3174.    SYNOPSIS
  3175.     error = PutFrameHeader(action,buffer)
  3176.     D0                     A0     A1
  3177.  
  3178.     ULONG PutFrameHeader(struct ClipAction *,APTR);
  3179.  
  3180.    FUNCTION
  3181.     Replaces a specific FrameHeader structure in an audio or video clip
  3182.     with the data structure provided.  FrameHeader chosen is the one
  3183.     that contains the field number specified in ca_VidStartField (even
  3184.     for audio clips).
  3185.  
  3186.     If the return value is not FERR_OKAY, something went wrong (such as
  3187.     the clip was not found, or the requested field number is out of range).
  3188.  
  3189.     CAUTION! This function is intended to be used to read/modify/write
  3190.     a Frame Header (using GetFrameHeader).  It is dangerous if not
  3191.     stupid to hand-craft a header from scratch and plug it in.  Doing
  3192.     so is very difficult and is bound to cause problems.  Also, be very
  3193.     cautious when modifying data in this structure.  The only thing
  3194.     that's safe/useful to modify is the SerData buffer and associated
  3195.     control values.  All else is toxic, flammable, noxious, etc.
  3196.  
  3197.    INPUTS
  3198.     clipaction - specifies the volume/clip name and the desired field number
  3199.  
  3200.     buffer - Pointer to caller's structure to fill in
  3201.  
  3202.    RESULT
  3203.  
  3204.    EXAMPLE
  3205.  
  3206.    NOTES
  3207.  
  3208.    BUGS
  3209.  
  3210.    SEE ALSO
  3211.     GetFrameHeader
  3212.  
  3213. flyer.library/Read10                                     flyer.library/Read10
  3214.  
  3215.    NAME
  3216.     Read10 -- Transfer data from SCSI drive to DMA memory
  3217.  
  3218.    SYNOPSIS
  3219.     error = Read10(action,blocks,lba,buffer)
  3220.     D0             A0     D0     D1  D2
  3221.  
  3222.     ULONG Read10(struct ClipAction *,WORD,ULONG,ULONG);
  3223.  
  3224.    FUNCTION
  3225.  
  3226.    INPUTS
  3227.     clipaction - specifies the volume and return method
  3228.  
  3229.     blocks - blocks to transfer
  3230.  
  3231.     lba - starting lba
  3232.  
  3233.     buffer - DMA buffer start (block) to receive data
  3234.  
  3235.    RESULT
  3236.  
  3237.    EXAMPLE
  3238.  
  3239.    NOTES
  3240.  
  3241.    BUGS
  3242.  
  3243.    SEE ALSO
  3244.  
  3245. flyer.library/ReadSize                                 flyer.library/ReadSize
  3246.  
  3247.    NAME
  3248.     ReadSize -- Read SCSI drive capacity
  3249.  
  3250.    SYNOPSIS
  3251.     error = ReadSize(flyervolume,countptr,lengthptr)
  3252.     D0               A0          A1       A2
  3253.  
  3254.     ULONG ReadSize(struct FlyerVolume *,ULONG *,ULONG *);
  3255.  
  3256.    FUNCTION
  3257.  
  3258.    INPUTS
  3259.     volume - pointer to structure which specifies drive
  3260.  
  3261.     countptr - pointer to ULONG to receive drive size in blocks
  3262.  
  3263.     lengthptr - pointer to ULONG to receive logical block size (bytes)
  3264.  
  3265.    RESULT
  3266.  
  3267.    EXAMPLE
  3268.  
  3269.    NOTES
  3270.  
  3271.    BUGS
  3272.  
  3273.    SEE ALSO
  3274.  
  3275. flyer.library/ReadTest                                 flyer.library/ReadTest
  3276.  
  3277.    NAME
  3278.     ReadTest -- Do a read speed test on a Flyer SCSI drive
  3279.  
  3280.    SYNOPSIS
  3281.     error = ReadTest(flyervolume,blocks,repeat,lba,dblflag)
  3282.     D0               A0          D0     D1     D2  D3
  3283.  
  3284.     ULONG ReadTest(struct FlyerVolume *,ULONG,ULONG,ULONG,UBYTE);
  3285.  
  3286.    FUNCTION
  3287.  
  3288.    INPUTS
  3289.     volume - pointer to structure which specifies drive
  3290.  
  3291.     blocks - size of each transfer (in blocks)
  3292.  
  3293.     repeat - number of transfers to perform
  3294.  
  3295.     lba - starting lba on drive
  3296.  
  3297.     dblflag - 0=simple test, 1=double-buffered test
  3298.  
  3299.    RESULT
  3300.  
  3301.    EXAMPLE
  3302.  
  3303.    NOTES
  3304.  
  3305.    BUGS
  3306.  
  3307.    SEE ALSO
  3308.  
  3309. flyer.library/RecordMode                             flyer.library/RecordMode
  3310.  
  3311.    NAME
  3312.     RecordMode - Ready Flyer for recording
  3313.  
  3314.    SYNOPSIS
  3315.     error = RecordMode(board)
  3316.     D0                 D0
  3317.  
  3318.     ULONG RecordMode(UBYTE);
  3319.  
  3320.    FUNCTION
  3321.     Readies the Flyer for recording.  This takes about 1/2 second.
  3322.  
  3323.     Return value indicates success (0) or the error code on failure
  3324.  
  3325.    INPUTS
  3326.     board - specifies the Flyer board (0-3)
  3327.  
  3328.    RESULT
  3329.  
  3330.    EXAMPLE
  3331.  
  3332.    NOTES
  3333.     You must currently ensure that no playing or recording is occurring
  3334.     before calling this function
  3335.  
  3336.    BUGS
  3337.  
  3338.    SEE ALSO
  3339.  
  3340. flyer.library/ReqSense                                 flyer.library/ReqSense
  3341.  
  3342.    NAME
  3343.     ReqSense -- Do SCSI RequestSense command
  3344.  
  3345.    SYNOPSIS
  3346.     error = ReqSense(flyervolume,buffersize,buffer)
  3347.     D0               A0          D0         A1
  3348.  
  3349.     ULONG ReqSense(struct FlyerVolume *,UBYTE,APTR);
  3350.  
  3351.    FUNCTION
  3352.  
  3353.    INPUTS
  3354.     volume - pointer to structure which specifies drive
  3355.  
  3356.     buffersize - size of data buffer provided (in bytes)
  3357.  
  3358.     buffer - pointer to buffer to receive Sense data
  3359.  
  3360.    RESULT
  3361.  
  3362.    EXAMPLE
  3363.  
  3364.    NOTES
  3365.  
  3366.    BUGS
  3367.  
  3368.    SEE ALSO
  3369.  
  3370. flyer.library/ResetFlyer                             flyer.library/ResetFlyer
  3371.  
  3372.    NAME
  3373.     ResetFlyer -- Reset Flyer to known state
  3374.  
  3375.    SYNOPSIS
  3376.     error = ResetFlyer(board,flags)
  3377.     D0                 D0    D1
  3378.  
  3379.     ULONG ResetFlyer(UBYTE,ULONG);
  3380.  
  3381.    FUNCTION
  3382.  
  3383.    INPUTS
  3384.     board - specifies the Flyer board (0-3)
  3385.  
  3386.     flags - misc flags (unused)
  3387.  
  3388.    RESULT
  3389.  
  3390.    EXAMPLE
  3391.  
  3392.    NOTES
  3393.  
  3394.    BUGS
  3395.  
  3396.    SEE ALSO
  3397.  
  3398. flyer.library/SCSIinit                                 flyer.library/SCSIinit
  3399.  
  3400.    NAME
  3401.     SCSIinit -- Test and Initialize SCSI bus on Flyer
  3402.  
  3403.    SYNOPSIS
  3404.     error = SCSIinit(flyervolume)
  3405.     D0               A0
  3406.  
  3407.     ULONG SCSIinit(struct FlyerVolume *);
  3408.  
  3409.    FUNCTION
  3410.  
  3411.    INPUTS
  3412.     volume - pointer to structure which specifies bus to init
  3413.  
  3414.    RESULT
  3415.  
  3416.    EXAMPLE
  3417.  
  3418.    NOTES
  3419.     Set v_SCSIdrive to the SCSI bus number x 8
  3420.     Also set 'FVF_USENUMS' in v_Flags
  3421.  
  3422.    BUGS
  3423.  
  3424.    SEE ALSO
  3425.  
  3426. flyer.library/SCSIreset                               flyer.library/SCSIreset
  3427.  
  3428.    NAME
  3429.     SCSIreset -- Hardware reset all SCSI busses on Flyer
  3430.  
  3431.    SYNOPSIS
  3432.     error = SCSIreset(board)
  3433.     D0                D0
  3434.  
  3435.     ULONG SCSIreset(UBYTE);
  3436.  
  3437.    FUNCTION
  3438.  
  3439.    INPUTS
  3440.     board - specifies the Flyer board (0-3)
  3441.  
  3442.    RESULT
  3443.  
  3444.    EXAMPLE
  3445.  
  3446.    NOTES
  3447.  
  3448.    BUGS
  3449.  
  3450.    SEE ALSO
  3451.  
  3452. flyer.library/SCSIseek                                 flyer.library/SCSIseek
  3453.  
  3454.    NAME
  3455.     SCSIseek -- Do SCSI seek command
  3456.  
  3457.    SYNOPSIS
  3458.     error = SCSIseek(flyervolume,lba)
  3459.     D0               A0          D0
  3460.  
  3461.     ULONG SCSIseek(struct FlyerVolume *,ULONG);
  3462.  
  3463.    FUNCTION
  3464.  
  3465.    INPUTS
  3466.     volume - pointer to structure which specifies drive
  3467.  
  3468.     lba - lba to which to seek
  3469.  
  3470.    RESULT
  3471.  
  3472.    EXAMPLE
  3473.  
  3474.    NOTES
  3475.  
  3476.    BUGS
  3477.  
  3478.    SEE ALSO
  3479.  
  3480. flyer.library/SetFillColor                         flyer.library/SetFillColor
  3481.  
  3482.    NAME
  3483.     SetFillColor - set fill color to use for blank video
  3484.  
  3485.    SYNOPSIS
  3486.     error = SetFillColor(action)
  3487.     D0                   A0
  3488.  
  3489.     ULONG SetFillColor(struct ClipAction *);
  3490.  
  3491.    FUNCTION
  3492.     Sets the specified Matte color as the fill color to use for blank
  3493.     video, such as when skipping lines with SkipLines or closing the
  3494.     write before all scan lines are transferred.
  3495.  
  3496.     This color remains valid for the context of this field only.
  3497.     Defaults to black when a new field is opened.
  3498.  
  3499.     The fields which need setup prior to calling SetFillColor:
  3500.        ca_FldHandle  - Field handle returned from successful
  3501.           OpenReadField or (Easy)OpenWriteField call
  3502.        ca_ReturnTime - RT_xxx value desired (not currently supported)
  3503.        ca_MatteY     - Luminance value
  3504.        ca_MatteI     - Signed I value
  3505.        ca_MatteQ     - Signed Q value
  3506.  
  3507.    INPUTS
  3508.     action - pointer to structure which contains:
  3509.        The field handle with which to associate this fill color
  3510.        The fill color (in YIQ color space)
  3511.        The return time for this call
  3512.  
  3513.    RESULT
  3514.  
  3515.    EXAMPLE
  3516.  
  3517.    NOTES
  3518.  
  3519.    BUGS
  3520.  
  3521.    SEE ALSO
  3522.     CloseField
  3523.     EasyOpenWriteField
  3524.     OpenWriteField
  3525.     FlyerWriteLine
  3526.  
  3527. flyer.library/SetFlooby                               flyer.library/SetFlooby
  3528.  
  3529.    NAME
  3530.     SetFlooby - used to set various Flyer internal values
  3531.  
  3532.    SYNOPSIS
  3533.     error = SetFlooby(board,chan,item,value)
  3534.     D0                D0    D1   D2   D3
  3535.  
  3536.     ULONG SetFlooby(UBYTE,UBYTE,UBYTE,ULONG);
  3537.  
  3538.    FUNCTION
  3539.     Selectively changes Flyer internal parameters by specifying the
  3540.     parameter number and its new value.
  3541.  
  3542.    INPUTS
  3543.     board - specifies the Flyer board (0-3)
  3544.  
  3545.     chan - video channel (0 or 1)
  3546.  
  3547.     item - the parameter number to change
  3548.  
  3549.     value - the value to assign to the parameter
  3550.  
  3551.    RESULT
  3552.  
  3553.    EXAMPLE
  3554.  
  3555.    NOTES
  3556.     All parameters are currently private.
  3557.     Name derived from the term "FloobyDust"
  3558.  
  3559.    BUGS
  3560.  
  3561.    SEE ALSO
  3562.  
  3563. flyer.library/SetFlyerTime                         flyer.library/SetFlyerTime
  3564.  
  3565.    NAME
  3566.     SetFlyerTime - sets the Flyer's internal clock to a preset date/time
  3567.  
  3568.    SYNOPSIS
  3569.     error = SetFlyerTime(datestamp)
  3570.     D0                   A0
  3571.  
  3572.     ULONG SetFlyerTime(struct DateStamp *);
  3573.  
  3574.    FUNCTION
  3575.     Sets the internal real-time clock of all attached Flyers to the date
  3576.     and time specified in the structure whose pointer is given.  They
  3577.     maintain this date/time for the purpose of date-stamping files.
  3578.  
  3579.    INPUTS
  3580.     datestamp - pointer to an AmigaDOS DateStamp structure
  3581.  
  3582.    RESULT
  3583.  
  3584.    EXAMPLE
  3585.  
  3586.    NOTES
  3587.  
  3588.    BUGS
  3589.  
  3590.    SEE ALSO
  3591.  
  3592. flyer.library/SetSerDevice                         flyer.library/SetSerDevice
  3593.  
  3594.    NAME
  3595.     SetSerDevice - Select type of device attached to a Flyer serial port
  3596.  
  3597.    SYNOPSIS
  3598.     error = SetSerDevice(board,port,type,device)
  3599.     D0                   D0    D1   D2   D3
  3600.  
  3601.     ULONG SetSerDevice(UBYTE,UBYTE,UBYTE,UBYTE);
  3602.  
  3603.    FUNCTION
  3604.     Specifies the type and model of device which the user wishes to
  3605.     attach to one of the Flyer's two serial ports.  These ports can be
  3606.     used for a variety of things such as SMPTE read, SMPTE write, MIDI,
  3607.     serial control, etc.  The Flyer will take care of details such as the
  3608.     baud rate, format conversion, etc. for all devices defined in Flyer.h
  3609.  
  3610.    INPUTS
  3611.     board - specifies the Flyer board (0-3)
  3612.  
  3613.     port - specifies the serial port (0 = A, 1 = B)
  3614.  
  3615.     type - type of serial device (SERDEVTYPE_xxx in Flyer.h)
  3616.  
  3617.     device - device model (SERDEV_xxx in Flyer.h)
  3618.  
  3619.    RESULT
  3620.  
  3621.    EXAMPLE
  3622.  
  3623.    NOTES
  3624.  
  3625.    BUGS
  3626.  
  3627.    SEE ALSO
  3628.  
  3629. flyer.library/SkipLines                               flyer.library/SkipLines
  3630.  
  3631.    NAME
  3632.     SkipLines - Seek past scan lines in a field previously opened
  3633.  
  3634.    SYNOPSIS
  3635.     error = SkipLines(action,lines)
  3636.     D0                A0     D0
  3637.  
  3638.     ULONG SkipLines(struct ClipAction *,UWORD);
  3639.  
  3640.    FUNCTION
  3641.     Seeks past a number of scan lines in a field previously opened.  If
  3642.     opened for reading, skips over unwanted scan lines.  If opened for
  3643.     writing, fills skipped lines with fillcolor (usually black).
  3644.     Returns FERR_FULL if out of room in current field when writing.
  3645.  
  3646.     The fields which need setup prior to calling SkipLines:
  3647.        ca_FldHandle   - Field handle returned from successful
  3648.                       - OpenReadField or (Easy)OpenWriteField call
  3649.        ca_ReturnTime  - RT_xxx value desired (not currently supported)
  3650.  
  3651.    INPUTS
  3652.     action - pointer to structure which contains the field handle to work
  3653.        with and the return time for this call.
  3654.  
  3655.     lines - number of scan lines to skip
  3656.  
  3657.    RESULT
  3658.  
  3659.    EXAMPLE
  3660.  
  3661.    NOTES
  3662.  
  3663.    BUGS
  3664.  
  3665.    SEE ALSO
  3666.     CloseField
  3667.     EasyOpenWriteField
  3668.     OpenReadField
  3669.     OpenWriteField
  3670.     FlyerReadLine
  3671.     SetFillColor
  3672.     FlyerWriteLine
  3673.  
  3674. flyer.library/StartClipCutList                 flyer.library/StartClipCutList
  3675.  
  3676.    NAME
  3677.     StartClipCutList - Prepares to perform clip cutting
  3678.  
  3679.    SYNOPSIS
  3680.     error = StartClipCutList(clip,flags)
  3681.     D0                       A0   D0
  3682.  
  3683.     ULONG StartClipCutList(struct ClipAction *,UBYTE);
  3684.  
  3685.    FUNCTION
  3686.     Used to begin clip cutting and processing for the clip specified.
  3687.     After opening the list with this function, use AddClipCut to make
  3688.     each subclip definition, then close the list using EndClipCutList.
  3689.  
  3690.     Two major types of processing can currently be accomplished using
  3691.     this mechanism: destructive and non-destructive.  The destructive
  3692.     processing will make the listed sub-clips and delete any unused parts
  3693.     of the original, doing a regional de-frag operation so as to not
  3694.     fragment the drive.  The non-destructive operation leaves the
  3695.     original intact and makes new sub-clips.
  3696.  
  3697.    INPUTS
  3698.     clip - specifies the master clip from which to make sub-clip(s)
  3699.  
  3700.     flags - specifies the type of processing (see Flyer.h CCL_xxx flags)
  3701.  
  3702.    RESULT
  3703.  
  3704.    EXAMPLE
  3705.  
  3706.    NOTES
  3707.     Currently only one ClipCut list may be open at a time.
  3708.  
  3709.    BUGS
  3710.  
  3711.    SEE ALSO
  3712.     AddClipCut
  3713.     EndClipCutList
  3714.  
  3715. flyer.library/StartHeadList                       flyer.library/StartHeadList
  3716.  
  3717.    NAME
  3718.     StartHeadList - Prepares Flyer for list of A/B heads
  3719.  
  3720.    SYNOPSIS
  3721.     error = StartHeadList(board)
  3722.     D0                    D0
  3723.  
  3724.     ULONG StartHeadList(UBYTE);
  3725.  
  3726.    FUNCTION
  3727.     Prepares specified Flyer to compose a list of A/B heads.
  3728.     Create a list like this when opening an existing project.  This
  3729.     will be more efficient than just submitting head definitions one
  3730.     at a time, because it allows the Flyer to do some optimizations.
  3731.  
  3732.    INPUTS
  3733.     board - specifies the Flyer board (0-3)
  3734.  
  3735.    RESULT
  3736.  
  3737.    EXAMPLE
  3738.  
  3739.    NOTES
  3740.  
  3741.    BUGS
  3742.  
  3743.    SEE ALSO
  3744.  
  3745. flyer.library/StillMode                               flyer.library/StillMode
  3746.  
  3747.    NAME
  3748.     StillMode - Set video looping method for video channel
  3749.  
  3750.    SYNOPSIS
  3751.     error = StillMode(board,chan,mode)
  3752.     D0                D0    D1   D2
  3753.  
  3754.     ULONG StillMode(UBYTE,UBYTE,UBYTE);
  3755.  
  3756.    FUNCTION
  3757.     Used to specify the type of video looping to use on stilled video.
  3758.     The default at power-up is MODE_FRAME.
  3759.  
  3760.    INPUTS
  3761.     volume - pointer to structure which describes a volume (used to
  3762.        pick specific Flyer card).
  3763.  
  3764.     chan - video channel (0 or 1)
  3765.  
  3766.     mode - video looping mode:
  3767.  
  3768.        MODE_FIELD - loops a single field of video
  3769.        MODE_PAIR - loops an interlaced pair of video fields
  3770.        MODE_FRAME - loops an entire color frame (default)
  3771.  
  3772.    RESULT
  3773.  
  3774.    EXAMPLE
  3775.  
  3776.    NOTES
  3777.  
  3778.    BUGS
  3779.  
  3780.    SEE ALSO
  3781.  
  3782. flyer.library/TBCcontrol                             flyer.library/TBCcontrol
  3783.  
  3784.    NAME
  3785.     TBCcontrol - Sense/control TBC functions
  3786.  
  3787.    SYNOPSIS
  3788.     error = TBCcontrol(board,TBCctrl,oper)
  3789.     D0                 D0    A0      D1
  3790.  
  3791.     ULONG TBCcontrol(UBYTE,struct TBCctrl *,UBYTE);
  3792.  
  3793.    FUNCTION
  3794.     Provides access to the (optional) Flyer TBC module.
  3795.  
  3796.     The "oper" flags describe which portions of the TBCctrl structure to
  3797.     apply.  This allows somewhat simplified use of this command without
  3798.     always needing to set all values for each call, as well as the
  3799.     ability to check the TBC status flags without modifying anything.
  3800.  
  3801.     To determine if the TBC module is present, use this function setting
  3802.     only the TBCOF_STATUS oper flag, then check the "status" flags
  3803.     returned for TBCSF_MODULE to indicate that one was detected.
  3804.  
  3805.    INPUTS
  3806.     board - specifies the Flyer board (0-3)
  3807.  
  3808.     TBCctrl - pointer to TBCctrl structure
  3809.  
  3810.     oper - various flags indicating what kind of operation(s) to perform:
  3811.  
  3812.        TBCOF_STATUS  -- get status flags
  3813.        TBCOF_MODES   -- set modes, flags, and muxes
  3814.        TBCOF_ADJUST  -- set adjustment values
  3815.  
  3816.        Any combination of these operations can be specified.
  3817.  
  3818.    RESULT
  3819.  
  3820.    EXAMPLE
  3821.  
  3822.    NOTES
  3823.     If no TBC module is present, an error will be reported if this
  3824.     command is used for anything except to get status
  3825.  
  3826.    BUGS
  3827.  
  3828.    SEE ALSO
  3829.     FlyerInputSel
  3830.     flyer.h
  3831.  
  3832. flyer.library/ToasterMux                             flyer.library/ToasterMux
  3833.  
  3834.    NAME
  3835.     ToasterMux - Set Flyer/Toaster multiplex switches
  3836.  
  3837.    SYNOPSIS
  3838.     error = ToasterMux(board,input3,input4,preview)
  3839.     D0                 D0    D1     D2     D3
  3840.  
  3841.     ULONG ToasterMux(UBYTE,UBYTE,UBYTE,UBYTE);
  3842.  
  3843.    FUNCTION
  3844.     Controls how the Flyer interacts with the Toaster's inputs 3 and 4
  3845.     and preview output.
  3846.  
  3847.    INPUTS
  3848.     board - specifies the Flyer board (0-3)
  3849.  
  3850.     input3 - video source fed to switcher input 3
  3851.        0 = Toaster input 3
  3852.        1 = Flyer video output (channel 0)
  3853.  
  3854.     input4 - video source fed to switcher input 4
  3855.        0 = Toaster input 4
  3856.        1 = Flyer video output (channel 1)
  3857.  
  3858.     preview - video fed to preview output
  3859.        0 = Toaster preview bus
  3860.        1 = Flyer camcorder input
  3861.  
  3862.    RESULT
  3863.  
  3864.    EXAMPLE
  3865.  
  3866.    NOTES
  3867.  
  3868.    BUGS
  3869.  
  3870.    SEE ALSO
  3871.     FlyerInputSel
  3872.     FlyerTermination
  3873.  
  3874. flyer.library/UnLockFlyVolList                 flyer.library/UnLockFlyVolList
  3875.  
  3876.    NAME
  3877.     UnLockFlyVolList - release lock on Flyer volumes list
  3878.  
  3879.    SYNOPSIS
  3880.     error = UnLockFlyVolList(list)
  3881.     D0                       A0
  3882.  
  3883.     ULONG UnLockFlyVolList(struct MinList *);
  3884.  
  3885.    FUNCTION
  3886.     Releases the lock obtained using LockFlyVolList.
  3887.  
  3888.     Like most other library functions, a return value of FERR_OKAY
  3889.     indicates success.
  3890.  
  3891.    INPUTS
  3892.     list - pointer to list (previously obtained with LockFlyVolList)
  3893.  
  3894.    RESULT
  3895.  
  3896.    EXAMPLE
  3897.  
  3898.    NOTES
  3899.  
  3900.    BUGS
  3901.  
  3902.    SEE ALSO
  3903.     LockFlyVolList
  3904.  
  3905. flyer.library/VideoCompressModes             flyer.library/VideoCompressModes
  3906.  
  3907.    NAME
  3908.     VideoCompressModes - set video compression modes and strategy
  3909.  
  3910.    SYNOPSIS
  3911.     error = VideoCompressModes(board,bestmode,worstmode,strategy)
  3912.     D0                         D0    D1       D2        D3
  3913.  
  3914.     ULONG VideoCompressModes(UBYTE,UBYTE,UBYTE,UBYTE);
  3915.  
  3916.    FUNCTION
  3917.     Sets the range of video compression qualities that the Flyer may use
  3918.     when recording video.  The default is all modes.  But this may be
  3919.     pared down by narrowing this range or one specific mode may be
  3920.     forced.
  3921.  
  3922.     Strategy picks the strategy the Flyer should use for auto-switching
  3923.     between modes.  The only supported value currently is 0, which uses
  3924.     compressed data size to switch modes.
  3925.  
  3926.    INPUTS
  3927.     board - specifies the Flyer board (0-3)
  3928.  
  3929.     bestmode - specifies the best video compression quality mode to use
  3930.     worstmode - specifies the worst video compression quality mode to use
  3931.  
  3932.          Currently supported modes, in order of decreasing video quality:
  3933.  
  3934.          0 (D2)  Best quality, worst compression
  3935.          1 (D2)
  3936.          2 (SN)
  3937.          3 (SN)
  3938.          4 (SN)  Worst quality, best compression
  3939.  
  3940.     strategy - always 0 for now (size based strategy)
  3941.  
  3942.    RESULT
  3943.  
  3944.    EXAMPLE
  3945.  
  3946.    NOTES
  3947.  
  3948.    BUGS
  3949.  
  3950.    SEE ALSO
  3951.  
  3952. flyer.library/VideoParams                           flyer.library/VideoParams
  3953.  
  3954.    NAME
  3955.     VideoParams - set video compression parameters
  3956.  
  3957.    SYNOPSIS
  3958.     err=VideoParams(board,vchan,mintol,maxtol,freq,vidlen,FIRset,special)
  3959.     D0              D0    D1    D2     D3     D4   D5     D6     D7
  3960.  
  3961.     ULONG VideoParams(UBYTE,UBYTE,UBYTE,UBYTE,UBYTE,UWORD,UBYTE,UBYTE);
  3962.  
  3963.    FUNCTION
  3964.     Sets the default video compression parameters for each video channel.
  3965.     For auto-adjusting compression modes, this is only used for the first
  3966.     field of video.
  3967.  
  3968.    INPUTS
  3969.     board - specifies the Flyer board (0-3)
  3970.  
  3971.     vchan - video channel (0 or 1)
  3972.  
  3973.     mintol - minimum tolerance mode (0 best, 6 worst)
  3974.  
  3975.     maxtol - maximum tolerance mode
  3976.  
  3977.     freq - random noise frequency
  3978.  
  3979.     vidlen - desired length of compressed field data (in SCSI blocks)
  3980.  
  3981.     FIRset - FIR presets to use
  3982.        0 = custom
  3983.        1 = 25%
  3984.        2 = 33%
  3985.        3 = 50%
  3986.        4 = 100%
  3987.  
  3988.     special - for testing only
  3989.  
  3990.    RESULT
  3991.  
  3992.    EXAMPLE
  3993.  
  3994.    NOTES
  3995.     Use only tolerance modes 0, 1, 4, 5, and 6
  3996.  
  3997.     ****** This may change as we finalize how the user's controls the
  3998.     amount of compression ******
  3999.  
  4000.    BUGS
  4001.  
  4002.    SEE ALSO
  4003.  
  4004. flyer.library/VoidAllHeads                         flyer.library/VoidAllHeads
  4005.  
  4006.    NAME
  4007.     VoidAllHeads - Remove all A/B heads from all Flyers
  4008.  
  4009.    SYNOPSIS
  4010.     error = VoidAllHeads()
  4011.     D0
  4012.  
  4013.     ULONG VoidAllHeads(void);
  4014.  
  4015.    FUNCTION
  4016.     Removes all A/B heads from all drives attached to all Flyers.
  4017.  
  4018.    INPUTS
  4019.  
  4020.    RESULT
  4021.  
  4022.    EXAMPLE
  4023.  
  4024.    NOTES
  4025.  
  4026.    BUGS
  4027.  
  4028.    SEE ALSO
  4029.     MakeClipHead
  4030.     VoidCardHeads
  4031.     VoidClipHead
  4032.  
  4033. flyer.library/VoidCardHeads                       flyer.library/VoidCardHeads
  4034.  
  4035.    NAME
  4036.     VoidCardHeads - Remove all A/B heads for the Flyer card specified
  4037.  
  4038.    SYNOPSIS
  4039.     error = VoidCardHeads(board)
  4040.     D0                    D0
  4041.  
  4042.     ULONG VoidCardHeads(UBYTE board);
  4043.  
  4044.    FUNCTION
  4045.     Removes all A/B heads from drives attached to specified Flyer card
  4046.  
  4047.    INPUTS
  4048.     board - specifies the Flyer board (0-3)
  4049.  
  4050.    RESULT
  4051.  
  4052.    EXAMPLE
  4053.  
  4054.    NOTES
  4055.  
  4056.    BUGS
  4057.  
  4058.    SEE ALSO
  4059.     MakeClipHead
  4060.     VoidAllHeads
  4061.     VoidClipHead
  4062.  
  4063. flyer.library/VoidClipHead                         flyer.library/VoidClipHead
  4064.  
  4065.    NAME
  4066.     VoidClipHead - Remove an A/B head for the specified clip
  4067.  
  4068.    SYNOPSIS
  4069.     error = VoidClipHead(clipaction)
  4070.     D0                   A0
  4071.  
  4072.     ULONG VoidClipHead(struct ClipAction *);
  4073.  
  4074.    FUNCTION
  4075.     Removes an A/B head for the specified clip.  Must exactly match the
  4076.     range of a previously defined head (with MakeClipHead) or this
  4077.     does nothing.
  4078.  
  4079.    INPUTS
  4080.     clipaction - specifies clip and in/out points of head to remove
  4081.  
  4082.    RESULT
  4083.  
  4084.    EXAMPLE
  4085.  
  4086.    NOTES
  4087.  
  4088.    BUGS
  4089.  
  4090.    SEE ALSO
  4091.     MakeClipHead
  4092.     VoidAllHeads
  4093.     VoidCardHeads
  4094.  
  4095. flyer.library/WaitAction                             flyer.library/WaitAction
  4096.  
  4097.    NAME
  4098.     WaitAction - Wait for a previously issued action to complete
  4099.  
  4100.    SYNOPSIS
  4101.     error = WaitAction(action)
  4102.     D0                 A0
  4103.  
  4104.     ULONG WaitAction(struct ClipAction *);
  4105.  
  4106.    FUNCTION
  4107.     Does not return until the specified action is complete.
  4108.  
  4109.    INPUTS
  4110.     action - pointer to structure that was used to issue the original
  4111.        command
  4112.  
  4113.    RESULT
  4114.     error - return code (from command)
  4115.  
  4116.    EXAMPLE
  4117.  
  4118.    NOTES
  4119.  
  4120.    BUGS
  4121.  
  4122.    SEE ALSO
  4123.     CheckAction
  4124.  
  4125. flyer.library/Write10                                   flyer.library/Write10
  4126.  
  4127.    NAME
  4128.     Write10 -- Transfer data from DMA memory to SCSI drive
  4129.  
  4130.    SYNOPSIS
  4131.     error = Write10(action,blocks,buffer,lba)
  4132.     D0              A0     D0     D1     D2
  4133.  
  4134.     ULONG Write10(struct ClipAction *,WORD,ULONG,ULONG);
  4135.  
  4136.    FUNCTION
  4137.  
  4138.    INPUTS
  4139.     clipaction - specifies the volume and the return method
  4140.  
  4141.     blocks - blocks to transfer
  4142.  
  4143.     buffer - DMA buffer start (block) of data to write
  4144.  
  4145.     lba - starting lba
  4146.  
  4147.    RESULT
  4148.  
  4149.    EXAMPLE
  4150.  
  4151.    NOTES
  4152.  
  4153.    BUGS
  4154.  
  4155.    SEE ALSO
  4156.  
  4157. flyer.library/WriteTest                               flyer.library/WriteTest
  4158.  
  4159.    NAME
  4160.     WriteTest -- Do a write speed test on a Flyer SCSI drive
  4161.  
  4162.    SYNOPSIS
  4163.     error = WriteTest(flyervolume,blocks,repeat,lba,dblflag)
  4164.     D0                A0          D0     D1     D2  D3
  4165.  
  4166.     ULONG WriteTest(struct FlyerVolume *,ULONG,ULONG,ULONG,UBYTE);
  4167.  
  4168.    FUNCTION
  4169.  
  4170.    INPUTS
  4171.     volume - pointer to structure which specifies drive
  4172.  
  4173.     blocks - size of each transfer (in blocks)
  4174.  
  4175.     repeat - number of transfers to perform
  4176.  
  4177.     lba - starting lba on drive
  4178.  
  4179.     dblflag - 0=simple test, 1=double-buffered test
  4180.  
  4181.    RESULT
  4182.  
  4183.    EXAMPLE
  4184.  
  4185.    NOTES
  4186.  
  4187.    BUGS
  4188.  
  4189.    SEE ALSO
  4190.  
  4191.